Converting Ethernet to RS232 converter to TTL

Yuan Gao (Meseta)
Meseta builds Robots
3 min readMay 28, 2019

The USR-TCP232-302 is an inexpensive little box that basically gives you a RS232 port that can be accessed over TCP.

USR-TCP232–302

Since TCP is a stream-based protocol, this works nicely — just send data to the embedded TCP server in the box, and it comes out of the RS232 port; any data received by the RS232 port gets sent back to the TCP client. In fact, the embedded software on the device has a few other options, including acting as a TCP client and connecting to a TCP server of your choosing, or similar modes with UDP.

Be Honest, Do Best! The USR-TCP232-302 web interface from the manual, showing TCP server mode with port 23 (telnet).

But who uses RS232 in this day and age? We’ve all got TTL serial ports. Fortunately, neither does most of the chips that drive this little device. In fact it has a SIPEX3232 chip specifically to handle conversion from TTL levels to RS232 levels.

Metal case is held on by two screws, easily removed.

Double-fortunately, the makers have been kind enough to provide unpopulated header spots for not only the TTL level (3.3V) RX and TX pins, but also a 3.3V supply. It’s a simple case of wiring into these, and disconnecting the SIPEX3232’s R2OUT pin which is holding the RX high.

Here are some relevant headers to populate.

The SIPEX3232’s R2OUT is actively driving the pin. Unfortunately it’s a SP3232E rather than one of the larger models which have !EN pins that we could have tied to ground to disable the chip (high-Z output). So we just have to lift up the pin. I de-soldered the unused DB9 for convenience.

R2OUT needs to be knocked out
Lift this little leg.

Once the SP3232E’s output is disconnected, you now have a direct 3.3V TTL connection to the on-board micro. I don’t know if it’s 5V tolerant, I opted not to find out; because there was a handy 3.3V supply, I soldered in a level shifter. The result is a nice little box that frees you from the grief of having to use USB-serial for everything.

The box is supplying the Arduino with 5V power. At this point I had wired in level shifters to ensure 5V tolerance on the RX pin

For example, here’s a GRBL CNC controller running over the network:

Interacting with Grbl over a TCP client, this is PacketSender, a tool for testing network connections.

--

--

Yuan Gao (Meseta)
Meseta builds Robots

🤖 Build robots, code in python. Former Electrical Engineer 👨‍💻 Programmer, Chief Technology Officer 🏆 Forbes 30 Under 30 in Enterprise Technology