Recently I bought the following USB to Serial cable: https://www.adafruit.com/products/954

This cable has grd, vcc, rx and tx lines.

I am looking to use this cable to interface with my desktop computer with a program like Tera Term or Hyperterminal so i can output messages for debugging purposes.

Also, I am trying to stay from using the Arduino IDE. I would prefer using C and flashing in the hex manually.

So, can anyone point me to a tutorial or explain how to make this happen?

thanks people.

  • 1
    Just use the Arduino IDE, and enable verbose output in the settings. All the needed commands will be visible in the output window. After that you can ditch the IDE.
    – Gerben
    Mar 5, 2016 at 19:24
  • Which aspect do you want to know about? Wiring the adapter? Programming the UART code, or compiling a program and uploading on the command line?
    – Majenko
    Mar 5, 2016 at 20:23
  • 2
    "This cable is not good for Arduino re-programming such as a Boarduino, MENTA, Monochron, etc. because it does not have the DTR/RTS wire necessary for initiating the bootloader reboot sequence. " Mar 5, 2016 at 20:37
  • @MikaelPatel But one can still hold the reset button and release it before the upload sequence begins.
    – Avamander
    Mar 5, 2016 at 22:06

1 Answer 1


For debugging:

Configure the UART on the ATmega to output TTL serial. If you are using the Arduino libraries, then Serial is what you want. Connect the TX pin of the ATmega to the RX of the USB/Serial cable, and vice versa.

Open the serial device on your computer in the program of your choice. When you write to the UART on the ATmega, you should see the messages in your terminal.

Pretty straightforward.

For programming:

If you're going to be using C and flashing things manually, you'd best go and buy an AVR programmer so you can program the ATmega directly without messing about with a bootloader. A programmer is ~15USD, so you might as well buy one. Then you can use the GNU AVR toolchain, which is very easy to use. Compile code with avr-gcc, and program the device with avrdude.

If you really want to use programming over serial, you'll have to manually hit the reset button each time you program the chip, because (as Mikael pointed out), that serial cable lacks the lines necessary to automatically reset the chip (and drop to the bootloader).

  • The bootloader is really not an obstacle, and using it is entirely compatible with the GNU AVR toolchain - after all, that is what the Arduino IDE uses. There is no interdependence of the arduino bootloader and any arduino runtime components, you can use either without the other. Sep 18, 2016 at 16:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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