Wednesday, September 25, 2013

DTMF Decoder Test Circuit

 As part of a few projects I'm working on, I want circuits to be able to decode DTMF tones played over an amateur radio link for remote control. This can be done with a moderately powerful processor in DSP, but I opted to buy a handful of MT8870D dedicated DTMF decoder chips on eBay.

I wired together a quick little test circuit, and it worked right away.
Video:


The built circuit is straight out of the datasheet on page 15.
I'm feeding audio into it from a GM300, which is a common commercial radio that with some effort you can get working on the amateur bands. I haven't done any testing yet as to how noise immune this DTMF decoder is, but I expect most of my remote control commands to be done with enough power that radio link noise won't go beyond the datasheet specs.

3 comments:

  1. So cool - seems Q1-Q4 is how you did your binary out - 0 through 15 for sixteen possible symbols. This would be pretty easy to adapt to say an Arduino or RasPi for some true command and control stuff.

    ReplyDelete
    Replies
    1. Yes. Q[1..4] is the value in binary, and StD goes high when it is decoding a DTMF code.

      Delete
  2. No you don't need powerful DSP to decode dtmf.
    Here is example how I have done it on STM32 cpu. But almost any cpu that can do 8k samples per second on ADC is usable.

    https://github.com/robots/STM32/blob/master/dtmf/dtmf_det.c

    ReplyDelete