HT813 FXO trunk: inbound PSTN calls have no audio and never hang up (SBC + local ATA setup) — config and firmware ruled out

maxpcc

SMB User
Joined
Sep 2, 2026
Messages
3
Reaction score
0
Setup: 3CX SMB (hosted, tenant on 1200.3cx.cloud), with a local SBC (v20.0.100) running on a Windows Server. Behind the SBC: a Gigaset N670 IP PRO DECT base with several extensions. The PSTN line (analog, TIM) is bridged into 3CX via a Grandstream HT813 ATA, FXO port, configured as an IP-based Generic SIP Trunk (no registration; the HT813 originates its own INVITE using "Primary SIP Server" = local SBC IP).

Symptoms:
- Outbound calls: work perfectly, full duplex audio (confirmed via SIP Trunk Checker and real test calls to a mobile).
- Purely internal calls (one DECT extension to another, never touching the HT813): work perfectly, full duplex audio.
- Real inbound PSTN calls (external caller dials the TIM number -> HT813 answers on FXO and originates the INVITE to the local SBC -> SBC forwards to 3CX -> 3CX rings the DECT extension): the call rings and connects normally, but audio is completely muted on the DECT side. In addition, when the external caller hangs up, the call is NOT terminated on the 3CX/DECT side - the internal extension has to end it manually every time.

Already ruled out, one by one, each with zero effect on either symptom:
- SRTP confirmed Disabled on the trunk (rules out the known V20 Update 9 TLS/SRTP one-way-audio bug).
- HT813 "Use NAT IP" set correctly to the current public IP (double-NAT residential setup, with manual port forwarding for SIP 5062 and RTP 5012-5013 confirmed correct end to end).
- Trunk option "PBX delivers audio" (forcing media through the 3CX media server instead of direct media) toggled off.

- HT813 "Primary SIP Server" checked/reverted between the local SBC IP and the public IP - no difference either way.
- HT813 FXO Termination: PSTN Disconnect Tone Detection enabled, tried both a cadenced Italian busy tone (425Hz, 500/500ms) and a continuous tone (400Hz, continuous) - no difference to the "never hangs up" symptom.
- Full firmware upgrade from 1.0.17.3 to the latest 1.0.19.6 (manual upload, confirmed successful, all settings preserved across the upgrade) - no difference to either symptom.
- The PSTN line itself confirmed healthy: a plain analog phone connected directly to the same TIM line works perfectly every day outside of our testing.

Question: has anyone run into this exact asymmetric pattern - HT813 FXO answering/bridging an inbound PSTN call into a 3CX SMB hosted tenant with a local SBC, where inbound audio is muted AND the call never disconnects when the PSTN caller hangs up, while outbound calls and purely internal calls are both fine? Is there any way to get 3CX to expose the real SIP/SDP trace for an actual received call (not just the SIP Trunk Checker test)? At this point we suspect either an HT813 hardware fault on the FXO port, or something in how the local SBC handles a locally-originated INVITE from an unregistered device, but any pointers would be very welcome before we escalate to Grandstream hardware support. Happy to share the trunk config or any capture on request.
 
Update: I ran one more isolation test - temporarily moved the physical PSTN cable from the TIM line to a completely different line (Vodafone), same HT813/trunk/SBC, no other change. Result: exact same behavior on the Vodafone line - inbound audio muted, and the call still doesn't disconnect when the external caller hangs up. This rules out the PSTN line/carrier entirely as the cause - the fault is isolated to the HT813 itself and/or its integration with the local SBC/3CX, independent of which physical line is plugged into the FXO port. Cable is back on the production TIM line now.
 
Major update: I captured a real inbound call at the network level (pktmon on the SBC host, filtered to the HT813 and DECT base IPs, converted to pcapng, analyzed with tshark). This isolates the fault precisely.

HT813 to local SBC (trunk leg): real, varying G.711 audio (the actual caller's voice) arrives correctly at the SBC.

Local SBC to DECT extension (extension leg): RTP packets flow at the right rate/timing, but every payload sampled is constant 0xFF - the SBC is forwarding pure silence instead of the caller's real audio. Not a network/NAT/port issue - packets arrive fine, the content is just silence.

DECT extension to local SBC: real, varying audio (the local party's own voice) - so the DECT/Gigaset side is working correctly.

Also: over the ~18 seconds of call captured, the SBC sent only 12 packets back toward the HT813 (no audio, likely just SIP), versus 1422 real audio RTP packets received from the HT813 in the same window - so essentially nothing real goes back toward the trunk side either.

This points squarely at the local SBC / 3CX media bridging logic, not at the HT813 (which sends and forwards real audio correctly on both legs it's involved in). Withdrawing the earlier HT813 hardware-fault hypothesis - this looks like a PBX/SBC-side bug in the trunk-to-extension audio path. Happy to share the pcapng capture if useful.