wolfgang ziegler


„make stuff and blog about it“

Arduino Nano Sketch Upload Fails

April 2, 2020

I'm mainly writing this blog post because I have encountered this issue a couple of times now and for some reason, I keep forgetting about its root cause. Then I find myself wasting precious time searching through internet forums for a solution.

So - with a little bit of luck - should this happen again, I can just look up this blog post or even stumble over it when I am scouring the internet for a solution. Ideally, this can be helpful to someone else well.

The Problem

Every once in a while, I encounter this problem when I'm trying to upload a sketch to one of my many Arduino Nanos.

Sketch uses 5284 bytes (17%) of program storage space. Maximum is 30720 bytes.
Global variables use 265 bytes (12%) of dynamic memory, leaving 1783 bytes for local variables. Maximum is 2048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00

Arduino upload error

Then I go through the usual spiel of checking the USB cable, trying another USB port, fiddling with baud rate settings, ... until I give up and ask the internet for help.

The Answer

It turns out that in all cases so far, my problem was that the Arduino Nanos I'm using, are already a couple of years old. I once ordered a whole bunch of cheap knock-offs and I am using those ever since.

Well, it turns out that they are using an outdated bootloader, which causes the problem described above.

This simple menu setting fixes the problem: Tools | Processor | ATmega328P (Old Bootloader).

Arduino upload error

Problem solved!

Arduino upload error

Note: Don't forget to switch back to ATmega328Pagain, in case you are also using current Arduino Nanos. Otherwise, you will probably face the same problem again.