Optiboot
Meer info
- Bedenkers
- Peter Knight, Bill Westfield
- Type
- Bootloader
- Licentie
- GPL
- Broncode
- github.com/Optiboot/optiboot
De bootloader van 512 bytes waarmee een Arduino via de usb-kabel te programmeren is zonder extra hardware.
Zijn voorganger vrat twee van de 32 kilobyte van een ATmega328P op. Optiboot doet hetzelfde werk in een kwart daarvan en gaf 1,5 KB terug aan de sketch van de gebruiker, genoeg om hem vanaf 2010 de standaard op de Arduino Uno te maken. Hij spreekt een deelverzameling van Atmels STK500-protocol op 115.200 baud.
De truc die het gemakkelijk maakt zit buiten de chip: de DTR-lijn van de usb-seriële chip is via een condensator met reset verbonden, zodat het openen van de poort het bord herstart. Optiboot wacht even op data en springt anders naar de applicatie. Hij controleert ook de reset-oorzaak — na een watchdogreset gaat het direct naar de applicatie, zodat firmware die zichzelf met opzet reset niet blijft wachten op een upload.