I can't access my Arduino Micro's USB programming port when it's in my project. I want to reroute the RX and TX pins outside to a serial-to-usb adapter.

I have this on hand from a while ago. I found the RX and TX pins in the serial connector and I connected them to the RX and TX pins of the Arduino as well as GND but when I try and program the device nothing happens. I usually get an open port error or something like that but the programming LED on the adapter doesn't light up. Conversely if I try using the Basic Stamp software I at least get a programming LED to light up on the adapter.

Do I need an FTDI breakout instead? Or am I wiring something wrong?

  • 1
    Well, RS-232 signals are not compatible with 5V ttl logic of Arduino. May 6, 2017 at 3:25
  • how is the device i mentioned any different than say and ftdi breakout except for a different connector?
    – Alex
    May 6, 2017 at 3:27
  • Clearly, you need another decoder on the micro side to convert the RS-232 to normal ttl signal. May 6, 2017 at 4:09
  • Is there any provision for RESET or you manually do it while uploading? May 6, 2017 at 4:11
  • Yes I wired in the reset. The device actually resets and I see the programing led flash briefly but nothing happens. Its strange, because I can program the basic stamp just by connecting the rx and TX. I feel like your statements must hold water in that the arduino can't interface somehow.
    – Alex
    May 6, 2017 at 6:20

2 Answers 2


RS-232 logic uses a negative voltage typically from -3 to -25V to represent a logical high and a positive +3 to +25V to represent a low. On the flip side TTL used on the AtMega uses +5V or +3.3V as a high (or VCC) and 0V as a low. Read more

Other than that the signals are the same logically so all that is needed is to invert the RS232 from -/+ ~12V to 0-5V using a simple converter.

Possibly the easiest approach is to use another Arduino Uno as a programmer, which needs 3 pins, TX, RX, and RESET. This tutorial seems to have some success. Check out "programming an Arduino with another".

  • I would say that an: ftdi->USB board, Bluetooth board or ICSP programmer is much easier than using yet another Arduino. (The Bluetooth one is tricky, but worth it if you don't like cables).
    – aaa
    Jul 6, 2017 at 18:52

yes you can, use a FTDI 232 USB TO SERIAL then set the Arduino IDE to the board you will be programing, and the serial port the FTDI RS232 Programmer is on.

connect the two rx to tx, and tx to rx, also the vcc of programmer to Arduino 5v pin.

then press and hold the reset button, and upload "regular".

The trick is to let go of RESET just after it finishes compiling, and it will get programed.

i think between 1-2 seconds after it finishes compiling and the compiling line just turned all green.

This is also how wireless programmer work using a Bluetooth module. I tried using the DTR pin to reset, but that did not work for me.

  • 1
    it is a Micro so ATmega32u4 with native USB. the bootloader doesn't listen on Serial1
    – Juraj
    Aug 2, 2021 at 7:18

Not the answer you're looking for? Browse other questions tagged or ask your own question.