Programmer is not responding

Hi, I am starting to get into arduino, but I cant even upload anything on the board. All I get is the Programmer is not responding error. I tried already a lot of tips i found, with no avail. I did the loopback test and everything was working correctly, just uploading doesnt work. My computer recognizes it just fine, port and board type should be okay. I also tried another computer, also not working. Does anyone have any tips ? Thanks
The whole error:
'''
Using Port : COM9
Using Programmer : arduino
Overriding Baud Rate : 115200
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x8a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x8a

avrdude done. Thank you.
'''

Hi @kahi. Which Arduino board do you have?

Arduino Uno R3, I think original, not a clone.

It is possible for a short or external circuitry connected to the Arduino board to interfere with the upload process, causing this type of upload error.

Make sure the board is not sitting on anything conductive that could short the contacts on the bottom of the board. Make sure there isn't any conductive debris (e.g., strands of wire or component leads) on the board or on the surface the board is sitting on.

If you have a shield or any external circuitry or components connected to your Arduino board, try this experiment:

  1. Unplug your board's USB cable from your computer.
  2. Disconnect any shields, modules, external circuitry, etc. from your board.
  3. Plug your board's USB cable back into your computer.

Now try uploading a sketch to the board again. Does the upload succeed?

This experiment will determine whether the upload error was caused by interference from your external circuitry. If so, you can then focus your attention on identifying the specific problem with the circuit and resolving it.

1 Like

I have nothing connected to the arduino, and it just sits on top of the desk, so I don´t think inteference is the problem.

Please try this experiment and report the results:

  1. Connect the Arduino board to your computer with the USB cable.
  2. Press and release the button on the Arduino board that is marked "RESET".

Do you see the "L" LED blink immediately after you release the "RESET" button?


:exclamation: NOTE: This will not solve the problem. This is only done to gather some more information about the problem.

No, if I press the reset button, absolutely nothing happens.

The lack of a blinking LED after reset tells us the upload failure is caused by one of two problems:

  • The bootloader has somehow been erased or corrupted.
  • The board has suffered from physical damage that is causing the primary ATmega328P microcontroller on the board to no longer function.

If the problem is with the bootloader then you can restore the board by doing a "Burn Bootloader" operation.

You will need an "ISP programmer" in order to perform a "Burn Bootloader" operation. An ISP programmer is a piece of hardware that allows your computer to write directly to the flash memory of the primary microcontroller on the Arduino board.

If you don't have an ISP programmer, you can use a spare Arduino board as a DIY programmer (known as an "Arduino as ISP"). I'll provide instructions you can follow to do that:

Burning Bootloader with "Arduino as ISP" Programmer

A. Prepare "Arduino as ISP" programmer

Although the "Arduino as ISP" only works for programming targets of the AVR architecture, you can use some boards of other architectures (e.g., "AVR", "SAMD", "megaAVR") as an "Arduino as ISP" programmer.

I will refer to the board which will used as an "Arduino as ISP" as the "programmer board" from here on. The board you are burning the bootloader to will be referred to as the "target board".

  1. Disconnect the Arduino boards from your computer.
  2. Make the following connections between the "programmer board" and the "target board".
    Programmer Target
    MISO MISO
    VCC 5V (VCC on 3.3 V boards)
    SCK SCK
    MOSI MOSI
    10 RESET
    GND GND
  3. Connect the "programmer board" to your computer with a USB cable.
  4. Select File > Examples > 11.ArduinoISP > Arduino ISP from the Arduino IDE menus.
  5. Select your "programmer board" from Arduino IDE's Tools > Board menu.
  6. Select the port of your "programmer board" from Arduino IDE's Tools > Port menu.
  7. Select Sketch > Upload from the Arduino IDE menus.
  8. Wait for the upload to finish.

You are now ready to burn the bootloader using your "Arduino as ISP" programmer.

B. Burn Bootloader

Instructions for burning the bootloader:


It is not possible to do this via "Arduino Web Editor". You will need to use Arduino IDE or Arduino CLI.


  1. Select the "target board" from the Tools > Board menu, and any other custom Tools menus (e.g., Tools > Processor).
  2. Select Tools > Programmer > Arduino as ISP from the Arduino IDE menus.
  3. Select Tools > Burn Bootloader from the Arduino IDE menus.
  4. Wait for the process to finish successfully.
  5. Unplug the USB cable of the "programmer board" from the computer.
  6. Disconnect the "programmer board" from the "target board".
  7. Connect the USB cable of the "target board" to your computer.

Okay, hopefully it wont be damaged, I have just ordered a spare board, since I have just this one. Thank you for the help <3

You are welcome. I also hope you will be able to recover the board.

Even if not, the fact is that occasionally burning up some piece of hardware is a normal part of all stages of the learning journey with electronics. We just have to try to avoid it when possible and hopefully gain some knowledge when those "magic smoke incidents" do occur that will allow us to avoid making that particular mistake again.

1 Like

So, I have tried burning the bootloader, unfortunately, I get this error:

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.03s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

Failed chip erase: uploading error: exit status 1

Does that mean the chip is broken ?

It does mean there is no connection to the target MCU, nothing more. Of course, one of the reasons can be damaged target MCU.

As Budvar10 already explained, this error means there is no connection. There are multiple possible causes of this error. One of those could be incorrect or faulty electrical connections between the programmer and target.

Carefully check the wiring between the "programmer board" and the "target board". It is even possible for jumper wires to get internal breaks that causes them to not conduct electricity even though they look visually fine. If you find any problems, fix them and then try the "Burn Bootloader" operation again.

6 posts were split to a new topic: Upload fails: "stk500_recv(): programmer is not responding"

Kahi - I just started with my new Arduino Nano. I was having the same problem. I fixed it by going to Tools in the Arduino IDE then selecting "processor". It will have an arrow to the right that you can cilick on and you'll see a selection of processors with one that says "(old bootloader)". Select that one then go back and compile your sketch again and then load it. It worked for me! Good luck!

5 Likes

8 posts were split to a new topic: Upload fails: "stk500_recv(): programmer is not responding"a

A post was split to a new topic: Upload fails: "stk500_recv(): programmer is not responding"

5 posts were split to a new topic: Upload fails: "stk500_recv(): programmer is not responding"

After installing Avrdude 7.3, I was unable to flash Arduino Nano from Arduino IDE via USB.

9 posts were split to a new topic: Upload fails: "stk500_recv(): programmer is not responding"