[Solved] Error while writing efuse

Hi.

Sorry I am pretty new to this stuff so this might be just a mistake of me
.
I have an Arduino Nano and tried to burn the Optiboot bootloader with usbtiny isp which failes every time with this error message: (Tried other bootloader as well with the exact same result.)

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
0xfd != 0x05
avrdude: verification error; content mismatch

The flash is already resettet so i cannot flash a sketch the usual way due to the missing bootloader. But i can upload e.g. the Blinky sketch using the usbtiny programmer without any problem.

So why can i flash a normal sketch but no bootloader? Shouldnt they be both simple hex files?

Verbose logs of both procedures are attached.

EDIT. Ok i missed that before. In the failed log there is an error writing a fuse:

avrdude: reading input file "0x05"
avrdude: writing efuse (1 bytes):

Writing | ***failed;
################################################## | 100% 0.03s

avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0x05:
avrdude: load data efuse data from input file 0x05:
avrdude: input file 0x05 contains 1 bytes
avrdude: reading on-chip efuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
0xfd != 0x05
avrdude: verification error; content mismatch

Any ideas what could cause that error? Could that be a hardware problem on the chip or something with the programmer?

Solve: For all interested the problem was caused by this (Quote from another forum)

Everything is fine. It is a feature of the avrdude.conf entry. 0xFD is the same as 0x05 because only the bottom three bits are used. i.e. 0xFD = 0xF8 | 0x05
So replace your command with:

So changing the efuse from 0x05 to 0xfd in boards.txt solved the problem

burn_bootloader_fail.txt (4.06 KB)

upload_sketch_using_programmer.txt (4.19 KB)

This is a bug introduced by the AVR 1.6.12 boards that came with the 1.6.10 IDE.

Upgrading the AVR boards will trigger it elsewhere too. They updated the avrdude version and then released without testing burn bootloader (or much else - which unfortunately is par for the course here)

1.6.9 with AVR boards 1.6.11 is fine - that's what I recommend people use currently.

I have just downloaded the new Arduino 1.6.11 IDE and the bootloader burning works again. Just at the first start, you have to click Yes in the message box saying something about new AVR boards version.