Using MT8870 DTMF Decoder With Arduino





Introduction: Using MT8870 DTMF Decoder With Arduino

DTMF DECODERS Are used to detect DTMF TONES Genrated by mobile phone DTMF Keypad.
In this project we are going to decode the DTMF Tones into 4bit Output and this output is given to the arduino which detects the keypress and displays it on LCD

Step 1: Components Used

The components that I have used are easily available locally in most of the cities or you can also buy it online

Step 2: Circuit Diagram

Use the above Circuit Diagram and build the circuit.You can change it according to your need

Step 3: Giving DTMF Input to Circuit

The input is given by a mobile phone with a 3.5mm jack which provides the DTMF signals to MT8870 decoder

Step 4: Programming the Arduino

I used USBasp to program arduino u directly program it using usb it is better to use usbasp if you are building the circuit on breadboard

Step 5: Arduino Code

Use the code to program arduino
it uses hex codes for numbers pressed on dialpad of mobile

The Hex Codes For Keypress Are As Follows
1 = 0x01
2 = 0x02
3 = 0x03
4 = 0x04
5 = 0x05
6 = 0x06
7 = 0x07
8 = 0x08
9 = 0x09
0 = 0x0A
# = 0x0C

Step 6: Getting Output on LCD

The decoded key shown on a LCD Module In this picture the # key is pressed on mobile phone and it is also shown on LCD Module



  • Epilog Challenge 9

    Epilog Challenge 9
  • Sew Warm Contest 2018

    Sew Warm Contest 2018
  • Gluten Free Challenge

    Gluten Free Challenge

We have a be nice policy.
Please be positive and constructive.



if we wanna to interface to dtmf and arduino .so will be the requremeny libraries



Very nice project. But I would like to ask if it is possible to add a sequence at startup, where you should "login" first then give commands to the arduino.

This way will be safer in use this project!

Thanks a lot.

My bad - theres a perfect image in the zipped files I just wasn't smart enough to look.

Is it possible to get a clearer image of the circuit layout. I can't quite read it but i really want to build it.


I use 9170B decoder is it orrect or not

i also use this decoder and this code works properly...

hello sir plz tell me what type arduino use and what the process to burn the program in it.

it available in Arduino IDE to Compile .

Pin is function for Atmel microcontroller which reads the state of a specific pin

C Means The PortC Of Microcontroller
its the analog input port of Arduino the function pin reads the state of portC or Analog port

Can u pls guide me what is PINC and the program is compiling with this. In Which module the PINC variable available ?