Let's Make Robots!

Serial cable question...

Hi guys,

I would be grateful for some advice. Recently, I've read some articles about using a phone data cable to connect *duino's to the serial port of a PC. As I have a board without USB and a lot of old phone data cables, I thought hacking an existing cable could be a relatively cheap solution.

From what I gather, something to do with voltage levels, you cannot connect an Arduino to RS232 directly -- you need either electronics to regulate that, or an IC like the "MAX232". So... I started checking my old data cables for this chip, or a similar one.

I did find one: a DB9 serial to S25/C25 Siemens-phone cable that has an "HIN232CP" embedded in the RS232 connector. From there, 3 wires are exposed that run to the connector that originally goes to the phone: GND, TX and RX. The electronics itself are difficult to get at: I already stripped of all the rubbery plastic stuff that was "melted" around the connector & internals; but the inside is in another plastic enclosure, only exposing the top of the IC to identify.

I noticed that the DIY cables that I have read about have 4 pins (VCC,GND,RX,TX), 5 pins (also a DTR), or 6 pins (also a RST pin).

If I look at the last schematic on http://letsmakerobots.com/node/25594 then I get a gut feeling that if a *duino was externally powered, those 3 wires could be enough to program and debug through serial connection with a PC. (If this cable works to communicate with a phone, why not with a *duino, right?) But, being fairly unconfident with electronics still, that same gut is also hinting me that if I do anything wrong, I can break things beyond repair.

So, I thought I'd ask people for advice that are much more knowledgable than me, to either confirm or refute my train of thought.. (at the risk of asking something blatantly obvious)... would it really be possible to make it work that simple or am I missing something here?

Thanks!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thank you! Now I am not affraid to give that a shot. ;-)

If you power your 'duino from a battery and manually press the Reset button right after you see the sketch size reported on the screen when uploading to the board, you can use only Rx, Tx and Gnd wires successfuly. I did that and it works.

That is a good way to damage your Arduino. The RS232 voltage levels are +12V and -12V. If you did not fry your serial port then you may have had a machine with TTL compatible outputs or maybe you were just lucky.

Either way you should not recommend that method.

He is talking about this cable:

"I did find one: a DB9 serial to S25/C25 Siemens-phone cable that has an "HIN232CP" embedded in the RS232 connector. From there, 3 wires are exposed that run to the connector that originally goes to the phone: GND, TX and RX. "

If he uses that, he has TTL level signals on the Tx, Rx and GND wires. DB9 goes to the high voltage RS232, signal goes through the HIN232CP circuit, (similar with MAX232) and TTL level signal comes out to the exposed wires. 

But it is a good practice to verify the voltages between the Rx, Tx wires and GND  to make sure they are not going over 5V.