Go Down

Topic: reload NANO3{328} Bootloader using USBtinyISP (Read 1 time) previous topic - next topic


I'm posting my steps to reload the bootloader into my NANO3 {328p} using my USBtinyISP programmer in hopes someone can pick out why I'm getting this error, avrdude: initialization failed, rc=-1.

I installed arduino-021 in c:\arduino, along with WINAVR and the USBtinyISP driver.
I checked the Device Manager and the USBtinyISP shows up OK.

Opening arduino the NANO3 enumerates to COM3 since it is USB powered for this reload. The USBtinyISP does not show up as another COM# port.

My guess is that the USBtinyISP need to enumerate to work. All of the above items are new and not altered in any way.
Any suggestions are appreciated.


Oct 10, 2010, 05:38 am Last Edit: Oct 10, 2010, 05:41 am by retrolefty Reason: 1
The USBtinyISP does not show up as another COM# port.

Nor should it. The USBtiny does not utilize the serial data connections to the AVR chip but rather uses the board's ICSP pins. By selecting the USBtiny when using the burn bootloader function in the Arduino IDE it knows to utilize the proper USB driver associated with the USBtiny.

Here is a installation procedure link for the USBtiny:




Thanks, Lefty

I followed the USBtinyISP instructions on adafruit for loading the driver. I put the files into the c:\windows\system32\driver folder.

The Device Manager reports USBtinyISP under the LibUSB-WIN32 devices, as it should. I connect up the NANO3, first to the USBtinyISP, checking the polarity OK, then connect the prog'rs USB cable to the computer. Then start arduino 21.

The arduino environment does not show another COM port for the USBtinyISP, as you mentioned this is OK. My guess was that this is the cause of the error, avrdude: initialization failed, rc=-1.

I don't know what to try out next.
Your ideas are welcome.
thanks again,


Oct 10, 2010, 06:21 pm Last Edit: Oct 10, 2010, 06:22 pm by retrolefty Reason: 1
That error is saying that AVRDUDE (the uploading program that the Arduino IDE uses) sees the driver now (that good, it's ready to work), but not an attached chip connected to the USBtiny. The chip or board you want to program must have power applied to it. You can either power the chip (board) to be programmed by applying power as you normally do (USB connected to PC or external power plug or there is a two position jumper on the USBtiny can be placed in a position where the USBtine applies power to the board. The instructions from Adafruit show the jumper position if you search the instructions.

So is your board to be programmed showing it's power light on when you get that error?



Thanks for your quick reply. Yes, the NANO3 has the blue power LED ON.
I have the jumper on the USBtinyISP on so it is powered by the prog'r.
Also, I tried powering the NANO3 via the USB port. Windows recognizes it on COM3.
When I try this way, I remove the jumper on the prog'r.

So, you suspect the problem is on the NANO3?



So, you suspect the problem is on the NANO3?

I really don't know. You have exhausted my knowlege of burning bootloaders using the USBtiny programmer. I've used a USBtiny for around a year to burn bootloaders into 168 and 328 chips without a problem. There is a forum on the Adafruit site that has a USBtiny section where you can post questions and ask for help.



Just to check out the NANO3, I tried to upload the example, blink sketch.
Blink compiles OK, then gives this error;

Binary sketch size: 1010 bytes (of a 30720 byte maximum)
avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

This is why I think the solution is to reload the arduino bootloader.
Maybe something else is wrong with the NANO3.

Any thoughts?



Thanks again, Lefty, I will post on adafruit.
best regards,

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131