Programmer is not responding

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.