The basic idea was to allow the MCU to make calls by transmitting DTMF tones, and to receive and decode DTMF tones (keystrokes) made on the phone that was called.
There are other possibilities however. Using the complete interface, it should be possible for the MCU to answer calls, and to transmit "room sounds" picked up by a microphone to the other phone.
If you're only interested in sending and receiving DTMF tones and not interfacing to a phone line, you can skip the next dozen or so paragraphs. The schematics and code samples will still apply.
It all begins with the interface to the actual telephone line. Unfortunately this is trickiest part!
There are two reasons for this:
- Phone lines require a 600 Ohm "balanced line". You can't just slap any old circuit between your "TIP" and "Ring".
- It's illegal!
- Have the Nex10 dial my cell when an event ("macro") was triggered.
- Leave a message - a series of beeps.
- Optionally be able to listen in on the room noise from the called phone. (work in progress)
- Capture any key presses I made from my cell. (Not sure how I want to use this yet.)
The short movie below describes the state of the project before adding the GPIO. (Looks the same now - only less wires to the Arduino.)