I recently bought an Arduino Pro Mini(3.3V 328p, 8MHz) along with a CP2102 USB to TTL UART convertor. When I try to upload a sketch to the Pro Mini using it, I get a avrdude:stk500_recv(): programmer is not responding error. My connection was like

Arduino pro mini                CP2102
TXO  ----------------------------> TXD
RXI  ----------------------------> RXD
VCC  ----------------------------> 3V3
GND  ----------------------------> GND
DTR  ----------------------------> DTR

I tried inter-connecting the TXO and RXI pins and had no luck. Also pressing and releasing the reset button on the Pro Mini doesn't seem to work either. I also tried programming it with my Arduino Uno, by removing the 328 and connecting correspondingly. Still no use.

Does any one have any ideas?

  • Are you using avrdude at a command line? If so, what command? Or are you using arduino ide? If so, what are the settings under Tools, Board and under Tools, Programmer? (Please edit the answers to these questions into your question, instead of answering in comments) Feb 24, 2015 at 19:52
  • @jwpat7 No no using Arduino IDE 1.0.6 for Mac. Actually the error is avrdude:stk500_recv(): programmer is not responding Feb 25, 2015 at 1:01
  • Which port did you select? Did you install a CP210x driver on your Mac? Feb 25, 2015 at 2:50
  • Ok, so you are using the Arduino IDE. What are the settings under Tools, Board and under Tools, Programmer? Feb 25, 2015 at 4:05
  • @ChrisStratton Yes i did install them Feb 25, 2015 at 11:33

8 Answers 8


rx -> tx
tx -> rx

Please check your connections.


I had the same problem and I used a magnifying glass to check the processor. I bought my clones off of eBay and they are using the ATMega168 (3.3V, 8 MHZ) processor. Once I realized my mistake and switched to the correct processor version, the upload was seamless.

I'm using an "FTDI FT232RL USB to TTL Serial Converter Adapter Module 5V and 3.3V For Arduino" for the programming connection, with

  • DTS-DTS;
  • Rx-Tx;
  • Tx-Rx;
  • VCC-VCC;
  • GND-GND, and;
  • GND-CTS.

I didn't even need to use the "reset" workaround of holding down the reset button before pressing the upload button and releasing when the words "Maximum is ..." appear in the output window.


In the Arduino IDE for my Pro Mini I have to select the board: "Arduino Deumilanove or Diecimila"

I'm not sure why this is or if this could cause any potential damage to your Pro Mini but I do know for sure this is the solution I used to program my pro mini and it works every time.


Change baudrate to


in Makefile (or via the GUI). I have seen your error many times and this fixes it, albeit on the 5V/16MHz mini USB variant. If 57600 does not work, try other values. I use this rate on my USB serial - may be different on bare Rx/Tx pins.

You have probably not messed up your bootloader, that is rarer than people think. I think your Arduino has some invalid code running, and it keeps resetting until it finds valid code - when I had that problem, I pressed reset just before punching enter for 'make upload'. Even if it does that, you've got perhaps 0.5s to initiate an upload after reset.

Do correct me if I'm wrong.

  • As above, it was the upload rate of 57600 that saved the day for me - thanks Feb 26, 2017 at 22:59
  1. Check connections, make sure RX-TX lines are crossing over.
  2. Arduino -> Preferences -> Show verbose output during - check upload will give you better visibility what is happening.
  3. When Arduino says "Uploading..." briefly press reset. The upload should start.

But one thing that helped me was... try different USB-UART adapter. For some reason the one which looked like (and was) cheap knockoff worked like a charm.

As a general advice, when sourcing parts from Chinese manufacturers I learned to be redundant - I usually order a bit more than I need and from mixed sources.


If this is a cheap clone it may be that there is no bootloader installed. You might try using a programmer or an Arduino as ISP to reprogram the device if this is the case. Using ISP programming will avoid any problem with serial connections as it is using SPI wiring instead and the Arduino IDE allows you to load the necessary bootloader using this method to enable programming over serial. You will need either an ISP programmer or another Arduino however.

  • no no bootloader was installed. In fact the it came with blink sketch preloaded. I tried reinstalling bootloader and had no luck. Any way now seller had agreed to replace the item. Feb 26, 2015 at 12:23

You should try another USB port, install the right drivers for the TTL/uart chip and reboot your PC. That worked for me.

Also, you should consider getting an arduino nano usb, these have an built in ttl/uart converter, ICSP header and can be placed on a breadboard easily.

  • Well I am using Ubuntu and I can see the UART convertor getting recognized correctly. The nano is too big for my project. I am right now checking up ATTiny 85 from digispark Mar 29, 2015 at 15:17
  • Can you also see the converter in your Arduino-editor? and are you sure you have selected the right mcu?
    – aaa
    Mar 30, 2015 at 6:42
  • Yeh in fact the transmitter pin on the UART blinks when I begin flashing of programs Mar 30, 2015 at 11:04
  • Hoe about pressing the reset button just before it uploads, worked for me once
    – aaa
    Apr 28, 2015 at 20:28
  • I tried that out. Didn't worked May 1, 2015 at 12:48

The problem is crystal clear in the picture enter image description here

  • 1
    This has absolutely nothing to do with the question asked. It's not even the same board(!) Mar 5, 2018 at 16:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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