How To Disable DTMF Detection?

Home » Asterisk Users » How To Disable DTMF Detection?
Asterisk Users 1 Comment

Hi,

I am running Asterisk 10.2.1 with a Sangoma A104D and DAHDI. The machine serves purely as a SIP ISDN gateway. The problem is that I am experiencing sometimes duplicated DTMF tones when the DTMF comes from the ISDN side. The Sangoma has Echo cancellation and DTMF Hardware detection is enabled. After disabling the hardware DTMF detection the double DTMF problem seems to go away. It seems that the Sangoma card and also Asterisk itself are detecting DTMF tones and pass them on as RFC2833 events. (Sangoma also offers to remove the DTMF audio from the stream after detection but that didnt help)

My temporary solution to disable the hardware DTMF detection in Sangoma doesnt look smart to me. I assume that the hardware detection is more reliable than the Asterisk software detection. Therefore my question: How can I disable the DTMF detection in Asterisk?

Quite frankly I have great problems understanding where in the interplay of Sangoma, DAHDI and Asterisk the RFC2833 events are generated. I would be super grateful for some general comments on how DTMF handling in Asterisk is working. My humble understanding is that Asterisk constantly listens to the audio stream for DTMF tones and then generates RFC2833 or SIP Info events from those. If so, how does Asterisk avoid to create double events if it listens to the tones and also receives events from SIP devices? Does it correlate them and generates new RFC2833 or INFO events in case some are missing?

Thanks for your help.

Gee

One thought on - How To Disable DTMF Detection?

  • Notes to myself on the DTMF detection.

    – DTMF tone detection is done in DAHDI
    – The DAHDI channel source code contains a parameter called
    “hardwaredtmf” which can apparently disable the dtmf detection in DAHDI. The parameter is however not read from the conf file according to the source code.

    Not clear yet to me who/what is supposed to change the hardwaredtmf parameter. My humble guess is that the wanpipe driver should do that.

    head-scratching

    Gee