05-04-2012 02:42 PM - edited 03-21-2019 09:46 AM
I have my SPA3102 hooked up to the front door ringer in my apartment complex.
The use case that I would like to support is to bridge to an IVR after a certain number of rings and then allow PIN code entry to buzz the door open.
Here's the good news -- It works! except when it doesn't .
Everything works as expected if the PIN code does not contain any of the digits (7, 8, 9, 0)
I cannot get DTMF for 7, 8, 9 and sometimes 0.
The common thread between them seems to be the 852Hz frequency but I have no idea what settings might help on the SPA3102. I remember stumbling across something about impedence and short loops a while ago but didn't understand it.
Any ideas about how I can troubleshoot further would be greatly appreciated.
-a.
05-05-2012 04:42 AM
What is the firmware version of your SPA?
What is the codec used and the DTMF relay method setted?
Regards.
05-05-2012 09:21 PM
Software Version: 5.2.13(GW002)
Hardware Version: 1.4.5(a)
Preferred Codec: G711u for both Line 1 and PSTN line.
DTMF Tx Method: AVT+Info
Here's some output from my freeswitch log when the leg from the front panel to the SPA3102 starts up. 1010 is the extension for the PSTN line. 192.168.1.159 is the ip of the SPA3102.
2012-05-05 13:32:54.625572 [DEBUG] sofia.c:5602 Channel sofia/internal/1010@192.168.1.2 entering state [received][100]
2012-05-05 13:32:54.625572 [DEBUG] sofia.c:5613 Remote SDP:
v=0^M
o=- 5356470 5356470 IN IP4 192.168.1.159^M
s=-^M
c=IN IP4 192.168.1.159^M
t=0 0^M
m=audio 16408 RTP/AVP 0 2 4 8 18 96 97 98 100 101^M
a=rtpmap:0 PCMU/8000^M
a=rtpmap:2 G726-32/8000^M
a=rtpmap:4 G723/8000^M
a=rtpmap:8 PCMA/8000^M
a=rtpmap:18 G729a/8000^M
a=rtpmap:96 G726-40/8000^M
a=rtpmap:97 G726-24/8000^M
a=rtpmap:98 G726-16/8000^M
a=rtpmap:100 NSE/8000^M
a=fmtp:100 192-193^M
a=rtpmap:101 telephone-event/8000^M
a=fmtp:101 0-15^M
a=ptime:20^M
2012-05-05 13:32:54.625572 [DEBUG] sofia_glue.c:4902 Audio Codec Compare [PCMU:0:8000:20:64000]/[G7221:115:32000:20:48000]
2012-05-05 13:32:54.625572 [DEBUG] sofia_glue.c:4902 Audio Codec Compare [PCMU:0:8000:20:64000]/[G7221:107:16000:20:32000]
2012-05-05 13:32:54.625572 [DEBUG] sofia_glue.c:4902 Audio Codec Compare [PCMU:0:8000:20:64000]/[G722:9:8000:20:64000]
2012-05-05 13:32:54.625572 [DEBUG] sofia_glue.c:4902 Audio Codec Compare [PCMU:0:8000:20:64000]/[PCMU:0:8000:20:64000]
2012-05-05 13:32:54.625572 [DEBUG] sofia_glue.c:2986 Set Codec sofia/internal/1010@192.168.1.2 PCMU/8000 20 ms 160 samples 64000 bits
2012-05-05 13:32:54.625572 [DEBUG] switch_core_codec.c:111 sofia/internal/1010@192.168.1.2 Original read codec set to PCMU:0
2012-05-05 13:32:54.625572 [DEBUG] sofia_glue.c:5023 Set 2833 dtmf send/recv payload to 101
05-06-2012 12:55 AM
From your log we can see that SPA and Freeswitch negotiate RTP-NTE DTMF relay.
Now try to check DTMF TX mode in the SPA according to this description:
DTMF Tx Mode
DTMF Detection Tx Mode is available for SIP information and AVT . Options are: Strict or Normal. The default is Strict for which the following are true:
•A DTMF digit requires an extra hold time after detection.
•The DTMF level threshold is raised to -20 dBm.
•The minimum and maximum duration thresholds are:
• strict mode for AVT: 70 ms
• normal mode for AVT: 40 ms
• strict mode for SIP info: 90 ms
• normal mode for SIP info: 50 ms
DTMF Tx Strict Hold Off Time:
This parameter is in effect only when "DTMF Tx Mode" is set to "strict," and when"DTMF Tx Method" is set to out-of-band; i.e. either AVT or SIP-INFO. If a user inadvertently sets the value to less than the default value, the system checks and reverts to the default value. There is no max limit on what the user can set of this parameter. A larger value will reduce the chance of talk-off (beeping) during conversation, at the expense of reduced performance of dtmf detection, which is needed for interactive voice response systems (IVR).
Default is 90ms.
You can try using Normal mode or Strict with a smaller Hold Off Time.
Regards.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide