Contributors:
.Brent. IntroductionSparkFun has a line of USB to serial UART bridge products designed to allow a user to communicate with a serial UART through a common USB port. It is harder to find computers with serial UART ports on them these days, but super common to find serial devices. Many of the official Arduino and clones share a common interface. This interface is essentially the 6 pin Single-In-Line (SIL), 0.1” pitch version of FTDI's TTL-232R cables.
The key change from the FTDI cables to our Arduino compatible boards is that we swapped pin 6 from RTS to DTR. This change was required to match Arduino's method of resetting the ATmega328P using the DTR signal.
Arduino compatible pinout is slightly different from the FTDI cable (pin 6)
Note The signal difference on pin 6 may cause these devices to not be 100% compatible with devices designed for use with the FTDI TTL-232R cables.
AdvantagesHaving a detachable USB to UART bridge comes with several advantages over boards like the Arduino Uno.
Before we get started, you might want to review this other tutorial:
Hardware TourThe interface to this line of boards is simple. One side has a TTL-232R cable compatible 6 pin SIL, 0.1” pitch female header. This side connects to the Arduino (TTL serial UART) board. We often use right angle headers on the Arduino Pro Mini to make connecting a serial bridge trivial. Our boards have silkscreen labels of where the black and green wires of the FTDI TTL-232R cables would be.
Fritzing diagram showing the connection between a USB to UART bridge and a Pro Mini
6 pin SIL, 0.1” pitch header at top of PCBA
The other side has a USB mini-B or USB micro-B jack. A standard USB cable is used to connect this jack to a host computer.
This line of products comes in a few forms. Here is a table comparing the most common options.
Table 1. Comparison of Common SparkFun Offerings
Warning: These boards are for prototyping ONLY. Unlike commercial devices, power negotiation and suspend mode do not occur, and it is possible to overload the USB host. Exercise caution when connecting a load, and never connect a load that draws too much current.
1. [5V is taken directly from VBUS and is only limited by the USB host controller.]↩
2. [This 3.3V regulator is powered directly from VBUS and is only limited by the USB host controller.]↩
For a quick comparison of a few USB to Serial boards, check out this Enginursday blog post:
Connecting the USB to Serial UART BoardsThese bridges have two connections. On one end there is a USB device connection. See table 1 for more details on the exact connector for the specific product. This interface is USB 1.1 / USB 2.0 full-speed compatible. A standard USB A to some sort of B cable is used to connect the bridge to the computer.
The other connection is a 0.1" pitch female header designed to connect to the microcontroller. Many of our products come with a compatible row of plated-through holes. These are designed to have 0.1" male headers soldered in. Some cases will best be served with straight headers, other with right-angle headers. The desired connection varies from design to design as discussed here. Some products come prepopulated with these headers.
Prepopulated FTDI header example
Resources and Going FurtherNow that you've successfully got your USB to Serial UART up and running, it's time to incorporate it into your own project!
For more information, check out the resources below:
Serial CommunicationAsynchronous serial communication concepts: packets, signal levels, baud rates, UARTs and more!
Using the Arduino Pro Mini 3.3VThis tutorial is your guide to all things Arduino Pro Mini. It explains what it is, what it's not, and how to get started using it.
Serial Terminal BasicsThis tutorial will show you how to communicate with your serial devices using a variety of terminal emulator applications.
Or check out our news posts about FTDI's and different USB-to-Serial breakout boards:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4