Telephone line?

Has anyone ever successfully interfaced an Arduino with a telephone line such that the Arduino can make and receive calls? I'm trying to build a remote monitoring system.

I understand that the much higher voltage of the phone line makes direct connection impossible. I have looked for modem shields without success. Anyone used an Arduino to control a voice modem?

Also, I believe attaching a homemade circuit to the phone lines is illegal. Using a (commercially available) voice modem should be legal, right?

I'm adding references I've found:

Another way to (legally) connect to a phone line is using a DAA

an rs-232 to ttl adapter ( and almost any old modem is one easy way to have ardunio make and answer calls. What do you want to happen when a call is established?

An easy hack might be buying an old used Hayes data modem from either a thrift store or perhaps E-bay. They have the needed legal telco interface and you can use simple acsii character commands "AT.." that Hayes kind of standardized on. You will need a MAX232 type serial voltage converter to interface it with an Arduino, but those can be built or bought pretty cheaply.


I recently saw some US ROBOTICS brand 14.4 voice + modems at a non chain thrift store for 50 cents each...

If i remember correctly most modems like that or newer support caller ID too

When going down that route just look for something that is rs232 serial (and not usb or internal bus modems), if its voice, you have the added bonus of having audio in/out via convenient headphone jacks

you can make a serial converter out of transistors, or get a max232 chip and wire it up or for like 7 bucks (plus shipping) you can get another design from modern devices as a kit