Electronic – Is the SparkFun RS232 Shifter SMD faulty

db9rs232serialsparkfunttl

Product Link

I am connecting this to an Arduino. (once Arduino programmed I removed the USB connector as it shares the serial comms with Pin0&1)

RS232<->Arduino
VCC <-> 5V
GND <-> GND
TX <->Pin0(RX)
RX <->Pin1(TX)

Seems simple enough. However when I connected the DB9 port to the actual serial device I could clearly see the serial data being sent to the RS232 (RedRX LED was active) but nothing was coming back from the actual device I was connecting to.

So…

I then connected the device to my laptop & hyper-terminal to test I could communicate with it. Sent the same commands as I was getting the Arduino to do… And yes I was getting the correct responses from the device.

I then connected the Arduino+SparkFun RS232 to Hyper-Terminal and loaded up a basic program into Arduino that a) sends a welcome message and then b) sends a message each time it receives a character via the serial interface (one of the example sketches of the Arduino). The result I am getting is the welcome message only, the SparkFun RS232 is not seeing anything I send back from Hyper-Terminal.

Is it faulty or am I missing a vital trick to getting it working properly?

Thank you for any help.

edit: I should also add that this morning I tested pins 0 & 1 with a simple LED blink sketch to prove the arduino pins were functioning (which they were).

This is Kellenjb- I am having a hard time easily seeing what cases are working versus not working. Rather than writing a long and hard to follow comment or an answer that isn't an answer, I am going to add it here and have the OP or someone else correct me if I have understood wrong.

Arduino Sparkfun Shifter -> Serial Device (No Go)
Serial Device -> Arduino Sparkfun Shifter (Go)

Serial Device -> Laptop (Go)
Laptop -> Serial Device (Go)

Arduino Sparkfun Shifter -> Laptop (Go)
Laptop -> Arduino Sparkfun Shift (No Go)

Best Answer

The sparkfun is a bit of a hack device that doesn't actually do proper RS-232 level shifting. Instead it uses the voltages from the other end to charge capacitors to use for the sending voltages - a clever idea, but I can forsee flaws if the other end isn't sending high enough voltages...

I would recommend ditching the sparkfun and using a MAX232 or similar device to do real level shifting.

Related Topic