This official Arduino board converts a USB connection into a 5 volt Serial TX and RX that you can connect straight to the Arduino Mini, Arduino Ethernet or other microcontrollers, allowing them to talk to the computer. It features an Atmega8U2programmed as a USB-to-serial converter, the same chip found on the Arduino Uno. The '8U2 firmware uses the standard USB COM drivers, and no external driver is needed. However, on Windows, a .inf file is required.
The USB Serial Adapter has an onboard mini-USB connector and 5 pins including RX (for receiving data from the computer) and TX (for transmitting data). 5V, Ground and a Reset pin are also exposed.
Status lights include power, RX and TX activity.
The adapter can easily connect to the Arduino Ethernet, Mini, Mini Pro, LilyPad, LilyPad Simple, and Fio.
An onboard polyfuse limits the current to 500mA and protects the host computer from short circuits.
The ATmega8U2 firmware source code is available . The ATmega8U2 is loaded with a DFU bootloader, which can be activated by connecting the solder jumper on the back of the board and then resetting the 8U2. You can then useAtmel's FLIP software (Windows) or the DFU programmer (Mac OS X and Linux) to load a new firmware. Or you can use the ISP header with an external programmer (overwriting the DFU bootloader). See this user-contributed tutorial for more information.
Automatic (Software) Reset
The USB Serial connector is designed in a way that allows it to reset an attached board by software running on a connected computer.The external reset line mirrors the DTR line of the virtual serial device on the computer. It's typically connected to the reset line of the connected board (e.g. an Arduino Ethernet board) through a 100 nF capacitor, allowing the board to reset on upload.
This setup has other implications. When the board is connected to either a computer running Mac OS X or Linux, it resets each time a connection is made to it from software (via USB). While it is programmed to ignore malformed data (i.e. anything besides an upload of new code), it will intercept the first few bytes of data sent to the board after a connection is opened. If a sketch running on the board receives one-time configuration or other data when it first starts, make sure that the software with which it communicates waits a second after opening the connection and before sending this data.
The pinouts on the connector are compatible with a standard FTDI header ( as well as the Adafruit and Sparkfun USB-Serial adapters).
Schematic & Reference Design
EAGLE files: USBSerial04_Light.zip
Drivers & Setup
Connecting to the Arduino Mini
See the guide to the Arduino Mini for information on connecting the adapter to the Mini.