FTDI based USB to UART/485 Interface

If you work with embedded electronics, UART ports is something you’ll probably use every day to interface with all your SoCs and microcontrollers. As modern PCs and laptops almost always lacks legacy serial ports, you need a good USB to UART interface for all your serial needs.

USB to RS232 interfaces are easily founds online and in computer stores, but if you need RS485 and TTL UART ports you may have some problem finding the right tool.

This projects is a compact USB to TTL UART or RS485 converter, based on the popular FTDI FT232 chip. It features 3.3V TTL UART operation and an 8P8C connector (sometimes referred as RJ-45) with on board termination and bus power injection options for 485 port.

FT232BL USB-to-UART

The FT232BL USB-UART IC is a popular device from FTDI semiconductors. Electronic enthusiast likes it cause it’s really reliable and well supported by most operating systems. All modern GNU/Linux distributions should support this chip out-of-the box.

The IC works without any programming, the optional EEPROM is needed only if you want to customize USB IDs or strings, so it was left out on this project.

I/O Voltage Levels

The FT232BL has a separate power rail for USB and I/O ports, so that it works with I/O at both 3.3V and 5V. This board uses a 3.3V linear regulator to generate the 3.3V supply from USB power, but that can be easily bypassed by shorting the Vin and Vout pins of the regulator. In this case, both the TTL UART and the 485 transceiver works at 5V.

TTL UART Port

A TTL UART port is available on one side of a 2×3 2.54mm strip, and can be directly connected to a TTL UART port of a SoC or microcontroller with compatible voltage (3.3V if the regulator is populated).

The TTL UART header can also be easily used to short the TX and RX signals with a jumper (useful to test if the converter is working) and to connect the signals to the 485 transceiver and use the 485 port.

In the picture, from left to right: TTL UART, RS485 and loopback jumper configurations. In TTL mode, TX and RX pins are the one on the crystal side with the pinout indicated in the silkscreen.

485 Port

RS485 is a popular UART-based half-duplex differential bus. It is used as layer-0 for many protocols, such as Modbus and DMX512.

Compatible transceiver includes Maxim MAX3072E, ADM3075E and similars for 3.3V operation and any MAX485-like IC for a 5V version.

The 485 bus is directly wired on the first pair of an 8P8C connector, with the reference ground connected on the fourth pair, so that the bus wiring can be done with standard CAT5 Ethernet cables. Additionally, a barrel jack connector is provided to directly feed power to the bus using the central pair (see schematics for details).

The default 8P8C connector is a Neutrik Ethercon NE8FAH, which is a really nice circular industrial Ethernet connector, compatible with standard cables, that can be easily fixed to a faceplate is necessary. If that’s not necessary, the PCB already provides drills to seamlessly mount a standard 8P8C connector, in both shielded and unshielded variants.

Finally, a 2×1 jumper is available for bus termination.

Download Links

As always, the hardware files for this design can be found on GitHub.

The schematics in PDF version can be downloaded from here.

The PCB is available on BatchPCB!

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: