3 Ways to Use Arduino as USB Serial Adapter Converter

Arduino uses FTDI chips to create serial port connection between computer and the chip, so you can program the Atmel chip inside the Arduino board, without the need of any ISP programmers. If we look at the schematic of Arduino, we will see that the RX and TX pins are connected to the FTDI chip (as we expected) (on Arduino board as pin 0 and pin 1) That means we can use those pins for using the FTDI chip itself.

There are 3 ways I know you can turn your Arduino Board into a USB Serial Adapter.

1 – Connect RESET pin to GND

As shown in picture above.

2 – Remove the Atmel Chip

connect-arduino-minimosd

3 – Upload a Sketch

The sketch basically stops the Atmel chip to interfere the communication between FTDI chip and your other device.

To do that, you don’t need to unplug the Atmel chip from its place. Before using your Arduino board as usb-serial converter you can upload that piece of code.

void setup(){
  pinMode(0,INPUT);
  pinMode(1,INPUT);
}
void loop(){
}

I hope it helps someone out there.

7 thoughts on “3 Ways to Use Arduino as USB Serial Adapter Converter

  1. Alessandro

    So with 3rd method (sketch), is it possible to load a sketch on a pre-bootloaded ATMEGA without need to remove the chip from Arduino, all right? Thank you for explain!

    Reply
  2. Jens Schou Rønnow Pedersen

    A year ago I tried the trick to use the Arduino Uno as an USB to serial converter by removing the ATMEGA328 chip from it’s socket and later also by connecting RESET to GND constantly. Both worked fine! But I’ve never thought of just setting digital pin 0 and 1 as inputs so they don’t interfer with the communication. What an Brilliant idea!

    Reply
  3. forumz

    thank you so much for posting this!!! i needed an ftdi chip to program my steering wheel module from axxess and was too cheap to buy one and used my arduino to do it instead. worked perfectly!

    Reply
  4. mahesh

    hi, i’m using an arduino compatible and using methods 2 & 3, i’m able to see what the second device (ESP8266) transmits TO my computer. i am not able to SEND any commands from my computer. i have NodeMCU installed and i can see it boot up (see below). the ardino compatible uses a CH340 chip, not FTDI. it works flawlessly as both an Arduino and as an ISP for, say, ATtiny chips. all i want to do is to use the arduino as a USB/TTL cable. any ideas?

    this is the output when i boot up the ESP8266. the output goes via the CH340 on the host arduino board to my windows laptop that’s running tera term (or just the arduino serial monitor; either works).

    any ideas what’s wrong?

    thanks!!

    mahesh

    NodeMCU 0.9.5 build 20150318 powered by Lua 5.1.4
    lua: cannot open init.lua

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Are you Robot? *

I don't look at blog comments very often (maybe once or twice a week), so if you have any questions related to multirotor please post it on this forum IntoFPV.com... You're likely to get a response from me faster on there.