Modify an off-the-shelf CP2102 module as an Arduino programmer

Posted on Tuesday, May 6th, 2014 in Arduino, how-to by DP


Kerry D. Wong wrote an article on how to modify a CP2102 module as an Arduino programmer:

To make it work with the Arduino bootloader, one easy approach is to disconnect the RST header pin from CP2102 pin 9 and connect it to the DTR pin (pin 28) instead. While in the Arduino schematics, the reset pin is connected to the ATmega328P pin 1 (RST) via a 100 ohm resistor, this connection is not strictly needed as pulses from the DTR pin (connected to ATmega328P pin 1 via a 100nF capacitor) will reset the MCU properly during programming. The two pictures below illustrate the connection between the module RST header and the RST pin of CP2102.

This entry was posted on Tuesday, May 6th, 2014 at 1:51 pm and is filed under Arduino, how-to. You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.

7 Responses to “Modify an off-the-shelf CP2102 module as an Arduino programmer”

  1. Max says:

    Yup, had/have the same problem. Unfortunately, a rather strong distaste for that sort of bodging prevents me from doing the same (the pin is not accessible as a PCB trace sadly). But for anyone who wants to go for it – more power to you… :)

  2. alco says:

    I also wrote something about the modification of a cheap FTDI adapter. Basic exact the same thing as Kerry.

    see it on:

  3. Instead of modifying the USB-TTL adapters, I modified the AVR board and the avrdude software to reset the AVR with a break signal. This way just Rx, Tx, Gnd and Vcc are needed.

  4. Instead of modifying the USB-TTL adapter I modified the AVR board to reset with a serial break signal.

  5. Max says:

    @Ralph: Thanks for the idea, although to be fair I think I’d rather implement it as a tiny ‘M-F pin strip adapter’ between the CP2102 and any Arduino. It would be indeed exceedingly useful to have official support for this – too bad the Avrdude guy is being unreasonable (it’s really not like half the internet using cheap DTR-less dongles would profit or something, right…).

  6. @Max: your point about modifying just the dongle is a valid one. So what I’ll do is a version with the circuit on the USB-TTL adapter, with a breakout for the RST connection.

  7. AbraXas Doe says:

    I’ve found very nice info on this post. Thanks to all you

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Recent Comments