Main Content

AnyKey protected bootloader

This is a modified arduino caterina bootloader that allows itself to be locked and unlocked from the user space application (or any arduino sketch). This was developed to allow automatic upgrades to our AnyKey device running on kickstarter now https://www.kickstarter.com/projects/715415099/anykey-the-usb-password-key. But it’s generic enough to be used on any arduino leonardo or atmega32u4 project as well.

By setting the right EEPROM byte you can disable or temporarely enable or fully unlock all bootloader features like reading, writing to flash, eeprom, fuses etc. In this picture you see an example of an arduino being used as ISP to flash another similar arduino. By protecting the bootloader on the programmer ISP you can’t accidentally loose your trusty programming device that allowed you to flash chips (see examples for full example isp sketch). It’s just an example but there are many use cases for a protected lockable bootloader.”

Link to article