A Cellphone Based Interactive Voice Response System

We’re all familiar with IVRS systems that let you access information using a touch-tone telephone. [Achu Wilso] built his own version which uses a cellphone, microcontroller, and computer.

The cellphone is monitored by an LM324 op-amp with an attached 555 timer chip. When a call comes in the voltage on the headphone output goes high, activating the timer circuit. If it goes low and does not go high again for about 25 seconds the call will be ended. Each incoming touch tone acts as a keepalive for the circuit.

An MT8870 DTMF (touch tone) decoder chip monitors the user input. An ATmega8 microcontroller grabs the decoded touch tones from that chip, and pushes them to a PC via USB. The PC-side software is written in Python, using MySQL bindings to access database information. eSpeak, the open source speech synthesizer software is used to read menu and database information back to the caller.

Not a bad little system, we wish there was an audio clip so we could hear it in action.

8 thoughts on “A Cellphone Based Interactive Voice Response System

  1. The beagle board, and atom boards are inexpensive enough, I would consider them the down side. A netbook at Walmart isn’t that much more expensive, after you consider how much more you get I’d consider the ongoing expense of maintaining telephone service the downside. Assuming all parties have a computer, and internet access, the same information could be shared with Google Docs, with no additional costs. Having said that I appreciate Achu sharing his project,and HAD for featuring it, for the stuff I can learn from it. Finally my free installation of Eagle reports that the file untitled.sch contains invalid data.

  2. While Asterisk may be a better solution for PBX-style functionality or database interface, this could be a fantastic way to interface with a uC project remotely.

    Say, for example, you wanted to remotely launch a model rocket and the user could dial the passcode or change options using their mobile phone. If the passcode is entered incorrectly, the user is sent through an endless series of automated option menus in a variety of languages until they hang up :D

  3. This is good and can be used for remote responce units. Cound be phone a calls phone b with a message phone be recieves message and sends phone a a digital code of action. add voice and you have the next talking toy/control unit in play if you are not affaid of the next steps.

  4. Can you please give the circuit diagram and list of all the components being used? This is very important for me. I need to use it as a module for my Final Year Project..!

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.