Electronic – avrdude: initialization failed, rc=-1

atmegabootloaderfuse-bitsfuses

when trying to program the fuses I get this known error message:

$ sudo avrdude -c usbtiny -p m328p -U hfuse:w:0x05:m

avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude done. Thank you.

Here's with -vvvv:
$ sudo avrdude -c usbtiny -p m328p -U hfuse:w:0x05:m -vvvv: pastebin.com/mcdyiHYq

Adding -B20 or -B250 doesn't help.

-> I know exactly how I caused this: $ sudo avrdude -c usbtiny -p m328p -U hfuse:w:0x11:m. The wired thing is the output and that it shows that E:11 is set instead of H:11. pastebin.com/wE7uwC31 Why did avrdude set the wrong fuse :\ and is this a bug in avrdude?

-> -B250 worked one time when I needed it: First I did $ sudo avrdude -c usbtiny -p m328p -U lfuse:w:E3:m, but when I tried to set it back to 0x62 I got initialization failed, rc=-1, added -B250 and $ sudo avrdude -c usbtiny -p m328p -U lfuse:w:E3:m worked. The thing is, it doesn't work now when I set the other fuse to 0x11 as described.

-> Everything is well connected because if I try a different same ATmega328P-PU chip, it works. So it has something to do with this 0x11 fuse setting I did. And also the code is running on this chip is still working and the attached LCD shows correct results.

This is what the 0x11 high fuse setting sets, but it's not like this setting means that it is set to "locked" or something?

Best Answer

Unfortunately you've programmed the RSTDISBL fuse bit, which means that ISP will no longer work. You will need to find or build a HVPP programmer in order to unprogram that fuse bit.

more info

Related Topic