Electronic – Arduino Uno RX/TX pins


The Arduino Uno has one main controller and one controller serving as USB-to-serial interface. The RX/TX pins of the main controller are directly connected, via 1k resistors, to some pins of the "communication controller".
RX/TX pins are also on one of the pin headers.

I'm wondering whether the TX pin of the "communication controller" (connected to the RX pin of the main controller) goes into high state (or is switched to input state) when no USB cable is connected and whether I could use the RX/TX pins on the header to connect some other stuff on a homegrown shield and perform serial communication through this shield.

Best Answer

The TX and RX on the Digital 0 and Digital 1 pins are designated for connecting to your own serial devices, whether a USB cable is connected or not. From the official Uno page:

  • Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the corresponding pins of the ATmega8U2 USB-to-TTL Serial chip.


The RX and TX LEDs on the board will flash when data is being transmitted via the USB-to-serial chip and USB connection to the computer (but not for serial communication on pins 0 and 1)

Of course, you can also use the SoftwareSerial library to communicate with serial TTL devices on any GPIO pins you like, not restricted to D0 and D1.