Pages: [1]   Go Down
Author Topic: Phone Operated Switch using Arduino  (Read 1481 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi,

I want to use arduino to allow me to open my garage door using any phone, whether cell phone or land line. What shield or device can I use to allow me to dial in to the arduino?

Essentially, I want it to work like this:

I dial the phone number that is associated with the arduino controller. Once it accepts the call, I enter a predetermined (programmed) combination such as 346#. When the correct code is entered, the rest of the circuit is designed so the output closes a switch that will be connected to tell the  garage door to actuate.

I just need to know what I need to incorporate a phone line and then I'll worry about the programming once I get the rest of the circuit built.
Logged

0
Offline Offline
God Member
*****
Karma: 39
Posts: 988
Get Bitlash: http://bitlash.net
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

One angle on this would be to use a commercial phone app service like Twilio (http://www.twilio.com/voice/api, no affiliation) to handle the details of the telephone side.  You develop a little app on their service and it POSTs some XML to a destination of your choice, perhaps an arduino with an ethernet shield.

-br
Logged

Queens, New York
Offline Offline
Faraday Member
**
Karma: 106
Posts: 3772
"Of all the things I've ever lost, I miss my mind the most" -Ozzy Osbourne
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Another option is bluetooth.
Logged

Created Libraries:
TFT_Extension, OneWireKeypad, SerialServo, (UPD)WiiClassicController, VWID

Sussex, UK
Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

If you buy a cheap PAYG mobile 'phone with a vibrator in it, you could use the vibrator motor terminals as a trigger for the Arduino. You'd have to set up the 'phone to only answer calls from a specific number/set of numbers but it's an easy way of doing things
Logged

Offline Offline
Faraday Member
**
Karma: 30
Posts: 2501
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Just thinking out (technically typing) loud...

An old external modem, speed is not really essential, it could even be as slow as a 14kbit modem
point is, once you connect the phone line to it, you can use a series of AT commands, pick up, drop
etc etc, you can make it answer but i'm not sure if it's the solution as you need to recognize the noises
of the keypad, I swear i came across an IC which encoded decoded those tones DTMF decoder?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 46
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I swear i came across an IC which encoded decoded those tones DTMF decoder?
Yes. MT8870 is one such IC. Have a read here for some background. And also look at this board.
« Last Edit: December 13, 2012, 05:11:50 am by jabbado » Logged

Offline Offline
Faraday Member
**
Karma: 30
Posts: 2501
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nice, you could dump the binary out to your Arduino board via a shift in register, so not to use up too many pins...

one of those IC's would certainly do the job for a landline phone project smiley
Logged

Offline Offline
Faraday Member
**
Karma: 30
Posts: 2501
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset



It's scary, the more you look at these schematics the more sense they make!
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 46
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

And now how do you pick up the phone?
Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 227
Posts: 6637
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

You can buy modems with built-in DTMF decoders, but the ones I know of (http://www.pcgrabber.com/) are expensive.
Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Ayer, Massachusetts, USA
Offline Offline
Edison Member
*
Karma: 54
Posts: 1857
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

It occurs to me, that you don't really have to pick up the phone, all you need is to have a caller-id and then use line splitter and have the arduino monitor the line.  It wouldn't answer the phone, but it would know when it is being called.  You could presumably program it to only do the switch for known numbers.  I did a google search for 'caller id monitor arduino' and this is the first link that pops up: http://blog.makezine.com/2008/03/03/caller-id-decoder/.

As they say in the comments section, using a modem with the AT+VCID=1 command string might be simpler.  You can find USB modems fairly cheaply, though you might need a USB shield on the Arduino to interface with it (or possibly a USB to serial converter).  If you search around, you can find the older serial modems and use a 9/25 pin breakout to isolate the RX/TX/etc. wires.  If you've been on the network for awhile, you may even have one in your junk drawer, or check places like goodwill, etc.  Alternatively, many laptops have a modem port, and you could use that and then send a signal to the arduino to open the door.

Obviously, you might not want the door opened anytime a random sales droid calls you to try and sell aluminum siding, but if you added a PIR sensor located by the garage door, you could open the door if the Arduino senses motion in the driveway within n seconds of the call.
« Last Edit: December 13, 2012, 07:57:01 am by MichaelMeissner » Logged

Pages: [1]   Go Up
Jump to: