I am making a mechanical keyboard using Atmel's pro micro as the controller. I decided I would try to replace it's bootloader, as the one it ships with doesn't seem compatible with QMK's RESET keycode (which is supposed to put the controller into DFU mode).

Clearly I didn't know what I was doing, as the controller no longer seems to be recognized when I plug it in via USB - MicroUSB.

If I recall correctly, this is the command I used to attempt to flash the bootloader:

"sudo avrdude -p atmega32u4 -P /dev/ttyACM0 -c avr109 -U flash:w:Caterina-promicro16.hex"

At this time, it seems likely to me that the issue is that I over-wrote the bootloader (or some portion of it) and failed to replace it with an appropriate alternative. Is this correct? Is there any way to correct my error through a USB-MicroUSB connection at this point, or will I need to buy some sort of programmer? All the leds light up.

  • sometimes the USB freaks out and gives up, try rebooting the PC.
    – dandavis
    May 19, 2018 at 20:06

1 Answer 1


You cannot load the bootloader over USB, that job needs to be done with an in-serial-programmer (ISP). You could have stopped the board working if you wrote the wrong fuses, e.g. different clock frequency.

Flashing the bootloader via ISP can be done with the Arduino IDE and there are lots of tutorials on the web. Try it, will probably work for you.

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.