I'm new to Arduino, and I recently got 3 off-brand Nanos, and soldered pins for all three.
Initially, none worked (I always received avrdude's errors when uploading).
Based on my research, I realized that one of them probably doesn't have a bootloader (whatever that means) because when I hit the reset button, the LED labeled "L" doesn't blink.
Continuing on with my research, I tried changing my processor (in the Arduino IDE) to ATmega328P (Old Bootloader). Now, the second Nano is working problem-free (everything is uploading correctly).
But there is a problem with the third Nano. When I upload an example program (such as "Blink"), the Arduino IDE outputs the following error:
Arduino: 1.8.9 (Windows 10), Board: "Arduino Nano, ATmega328P (Old Bootloader)" Sketch uses 930 bytes (3%) of program storage space. Maximum is 30720 bytes. Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes. avrdude: stk500_recv(): programmer is not responding avrdude: stk500_recv(): programmer is not responding avr_read(): error reading address 0x0000 read operation not supported for memory "flash" avrdude: failed to read all of flash memory, rc=-2 avrdude: stk500_recv(): programmer is not responding the selected serial port avrdude: failed to read all of flash memory, rc=-2 does not exist or your board is not connected This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences.
But somehow, the Nano is functioning correctly! The LED is blinking as it should. I confirmed that it is executing the "Blink" program by changing the blink rates, and it's working. But every time I upload, I receive that error. Does anyone know why?
Please note that this isn't a problem with me selecting the wrong COM port; I've tested it multiple times and confirmed that it's the correct port.