“Arduino Pro Mini not resetting via DTR – stk500_recv error with FTDI”

Hi all,

I am facing an issue while trying to upload code to an Arduino Pro Mini (ATmega328P, 5V/16MHz) using an FTDI adapter (used UM232R FT232RL).

Problem:
The upload fails with the following error:

avrdude: stk500_recv(): programmer is not responding

From my analysis, the board is not resetting properly, and hence it is not entering bootloader mode during upload.


What I have checked so far:

  1. Hardware Connections:
  • FTDI TX → Pro Mini RX
  • FTDI RX → Pro Mini TX
  • VCC and GND connected properly
  • FTDI DTR → Pro Mini DTR pin
  1. Manual Reset Attempt:
  • Tried pressing reset button manually during upload
  • Still inconsistent / not working reliably
  1. Board Settings:
  • Board: Arduino Uno / Pro Mini
  • Tried both:
    • ATmega328P
    • ATmega328P (Old Bootloader)
  1. Also tried some software reset by triggering wdt, but still it didn't work.

It would be great if someone help in going forward.

Is my hardware connections are correct or should i verify anything else from hardware connection point of view?
Or is there any issue with the bootloader, as software reset is also not working.

Thanks in advance.

Try reversing TX and RX. Make sure all voltages are correct. Do you have a choice of Processors in the Tools menu, try them all.

Do each of these steps at least 3 times (5 even better) before saying they don;t work.

Have you soldered the header pins to the pro mini and the FTDI board?

I don't know anything about your UART adapter, but on the Pro Mini I believe DTR is the pin at the end of the headers, next to TX.

This is confusing to me. On v1.8.19, the "Old Bootloader" option is under the "Nano" board selection, not the "Pro or Pro Mini".

Does that mean it does work sometimes?

I guess I would try it with another set of jumpers.

yes it is soldered.

If you have this model, is the voltage select jumper in the correct position ?

You are right, i was also trying with Nano board as well, even there it didn't work. Yes DTR pin is the one which is at the end next to TX. Also resetting manual didn't work while i tried 4-5 times, i am not getting exactly at what time i should release the reset pin. Also connectivity of Jumpers are also verified, they are absolutely fine, I'm not sure if i am missing anything or is there some other method to flash serially. Any suggestion on this?

My jumper is in position where it is selecting 3.3V level, i mean pin 1 and pin 2are shorted. Is there any mistake here?

Can you verify that the processor is indeed a 328P?
Is your board a 3.3V/8MHz or a 5V/16MHz version?

It depends on your answer to post #9.

I have several Pro Mini's, including both 8MHz and 16MHz, and I have never had to manually reset any of them for flashing. The DTR line is supposed to take care of that automatically.

my processor is 5V/16MHz, and now jumper in ftdi is also rightly connected which provides 5V.

should we leave cts line open or do we need to connect it somewhere?

Same problem when I tried to charge the pro mini 3.3V/8Mhz. The problem went away when I switched the programmer (FT 323) to 5V.

my processor is 5V/16MHz.

Source: [WIKI] Programme Pro Mini avec FTDI / Arduino Uno + code, câblage

Hey, yeah this one can be super annoying :sweat_smile: been there with my Pro Mini.

From what you’re describing, it really does sound like the board isn’t hitting bootloader at the right time, even though wiring looks fine. I faced something similar and it turned out to be a small hardware detail.

What worked for me:

  • Check if there’s a 0.1µF capacitor between DTR and RESET. Without that, auto-reset won’t trigger properly (this was my issue).
  • Also try selecting “ATmega328P (Old Bootloader)” again but slow down upload timing—sometimes I had to press reset just before “Uploading…” shows.
  • One more thing: double-check FTDI is set to 5V, not 3.3V.