raphnet.net banner

DTMF Tone decoder for PC

Buy Me a Coffee at ko-fi.com
Contents: Overview | The idea | Pictures | Software | Disclaimer


In a old answering machine, I discovered a very interesting IC: the CD22204. It is a DTMF (Dual Tone Multi Frequency) decoder. DTmF is a standard using combination of different frequencies, assotiated to numbers and letters (0-9, A-D, * and #) as in the following table:

goto top

The idea

I decided to use this IC to send the decoded characters to a computer using a serial port. This can be used for many things, such as controlling lights remotely with a phone or radio.

At the moment, I use the decoder with my Phone audio interface to log the places where I call, and collect statistics about who are call the most, etc. Just for fun ;)

The main components are:
How it works:
Each time a tone is recognized by the CD22204, the MCU translates it to an ascii value, and sends it to the computer via the serial link, at 9600 Bauds, 8N1.

The protocol is really simple right now, but one day I might enhance it and make the circuit communicate on a rs485 bus.

goto top


Here are a few pictures of my decoder:

goto top


I wrote a progam to log the calls I do. It is a simple daemon running under Linux. It is named dtmflogd.

Here is the source code:

goto top


I am not responsible if you use this for any reprehensible actions.
I cannot be held responsible for any damages that could occur to you or your equipment while following the procedures present on this page. Also, I GIVE ABSOLUTELY NO WARRANTY on the correctness and usability of the informations on this page. Please note, however, that the procedures above have worked in my case without any damages or problems.

Now you cannot say that I did not warn you :)

goto top

Any trademarks used on this site are the property of their respective owners.
Copyright © 2002-2022, Raphaël Assenat
Website coded withWebsite coded with vimLast update: January 7, 2020 (Tuesday)