USBaspLoader updates specifically for tinyUSBboard

In normal mode of operation the bootloader (USBaspLoader) protects itself from being overwritten due normal uploads.
In order to update your tinyUSBboard's bootloader you first have to upload a special "updater"-firmware.
This procedure is exactly the same as uploading a normal firmware.

After the "updater" is uploaded, the bootloader has to be exitted to start the just programmed firmware. (Replug or reset the board.)
When the "updater" takes over control (LED on PD5 flashes), it first checks the current installed bootloader with the one contained within the "updater".
If both are identical, no writing is performed and it stops working by signalling "operation complete" (LED on PB0 flashes, too).
If there are differences it starts overwriting the existing bootloader with the new one. WARNING: In this phase the board should not be disconnected from power until it signalls "success" by flashing the LED on PB0.(LED on PB1 only flashes when update was done).

The procedure can be repeated some times (since the updater checks before write), until the updater haven't done any change anymore and it only signalls completition with LEDs PB0 and PD5. (PB1 will not flash).
After this it is save to upload (and overwrite the "updater" with) new firmwares by the user...


Revision 3 and newer

(magic value = 0xfe9a5680)
Revision 3 and newer
bootloader update to v0.96 (see USBaspLoader and patch)
bootloader update to v0.96.2 (see USBaspLoader and patch)
bootloader update to v0.97 (see USBaspLoader and patch)
bootloader update to v0.97.1 (see USBaspLoader and patch)

ATmega328P version

(magic value = 0xfe9a5680)
ATmega328P version
!! BUG !! bootloader update to v0.96 (see USBaspLoader)
!! BUG !! bootloader update to v0.96.2 (see USBaspLoader)
!! BUG !! bootloader update to v0.97 (see USBaspLoader)
bootloader update to v0.97.1 (see USBaspLoader)

Revision 2 and older

(magic value = 0xfe65a980)
Revision 2 and older
bootloader update to v0.95.1 (see USBaspLoader and patch)
bootloader update to v0.96 (see USBaspLoader)
bootloader update to v0.96.2 (see USBaspLoader)
bootloader update to v0.97 (see USBaspLoader)
bootloader update to v0.97.1 (see USBaspLoader)