Arduino Nano Upload Fail

Hi,
I am new to electronics and Arduino. I am currently using Arduino Nano CH340P and keep failing to upload the sketch.

Does anyone have suggestions on what else I could check or try?

Thank you.


avrdude: Version 6.3-20190619
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         Using Port                    : COM2
         Using Programmer              : arduino
         Overriding Baud Rate          : 57600
         AVR Part                      : ATmega328P
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : Arduino
         Description     : Arduino

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0xfc

avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0xfc
         Hardware Version: 2
         Firmware Version: 1.4611299
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : 0.531 Hz
         SCK period      : 19945520.9 us

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

avrdude: stk500_recv(): programmer is not responding

avrdude done.  Thank you.

Failed uploading: uploading error: exit status 1

Hi @skj_2002. A program called a "bootloader" is stored in a special area of memory in the Nano board's microcontroller. The classic Nano (as well as its 3rd party derivatives) have been manufactured with two different types of bootloader installed.

You must configure the Tools > Processor menu in Arduino IDE according to which bootloader is installed on your Nano. Having the incorrect configuration selected in this menu is one of the potential causes of uploads failing with the "avrdude: stk500_recv(): programmer is not responding" error.

The multiple blinks on reset tell us that your Nano board has the modern bootloader installed.

I can see from the verbose upload output that you have Arduino IDE incorrectly configured for use with the Nano boards with the "old bootloader".

Select Tools > Processor > ATmega328P from the Arduino IDE menus to configure it for use with the modern bootloader and then try uploading again.

Hopefully this time the upload will finish successfully.

Thank you @ptillisch for the reply.

I see a single blink after reset. After I select Tools > Processor > ATmega328P and got a new error.

전역 변수는 동적 메모리 9바이트(0%)를 사용, 2039바이트의 지역변수가 남음.  최대는 2048 바이트.
"C:\Users\sk02j\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude" "-CC:\Users\sk02j\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf" -v -V -patmega328p -carduino "-PCOM2" -b115200 -D "-Uflash:w:C:\Users\sk02j\AppData\Local\arduino\sketches\2411FD38178999945D8A5068D545FE54/Blink.ino.hex:i"

avrdude: Version 6.3-20190619
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Users\sk02j\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

         Using Port                    : COM2
         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=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x3a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x3a

avrdude done.  Thank you.

Failed uploading: uploading error: exit status 1

It's really weird that both processors are failing to respond.

It compiles correctly.

Verify IDE >> TOOLS >> PROCESSOR >> ATmega328P (Old bootloader)

Is your USB cable for power-only (a phone charger) , or data?

Good point. This does indicate that your board has the "old bootloader" and thus the previous Tools > Processor > ATmega328P (Old bootloader) configuration was the correct one.

Thank you @xfpd.

I am not sure what type of USB cable I have with me. If I see USB-SERIAL CH340 (COM2) in device manager, am i using a USB cable for data?
image

That is a good data cable.

this kept happening me as well. Try pressing the white button while removing the cable it resets the arduino or the arduino might be damaged

Hi @skj_2002 !

From Google Gemini AI:

AI Overview

The STK500 is an older Atmel AVR programmer, often seen in Arduino contexts as an error source (avrdude: stk500_recv(): programmer is not responding) or a hardware tool for burning bootloaders, requiring specific setup (like programmers.txt edits or using it as an ISP) to work with the Arduino IDE, but typically, modern Arduinos use simpler USB-to-Serial chips, making direct STK500 use for simple sketches less common than fixing general upload errors by checking COM ports, cables, and board selections.

Close the Serial Monitor window, verify board, port, and processor... and try to upload again.

I tried to upload with same board and same cable but with different computer. Then, I could successfully upload.

I'm not sure why Arduino Nano was not happy with my labtop yesterday. My labtop is still failing to upload. Is there any drivers to be updated or downloaded for clone board?

No other drivers are needed.

You've proven your cable and Arduino work. It's your computer you need to examine.

Is your laptop USB port clean and reliable?

Did you do any projects with motors or solenoids or anything requiring high-current?