[sdiy] a provoking question about time

Roman Sowa modular at go2.pl
Mon Jun 27 12:00:19 CEST 2022


W dniu 2022-06-26 o 21:54, brianw pisze:
> 
> A bootloader is typically stored in ROM inside the CPU, and is capable of reading at least two alternate boot images. If one firmware image is corrupted due to power loss during programming, the other image will still boot. Once booted, the user can re-attempt the firmware upgrade and hope that power won't be interrupted. Some bootloaders use dual devices so that the backup device is not being erased while the updated device is being upgraded.

that's what I do in my applications capable of remote upgrade. Sometimes 
it's just the small bootloader and only one image of "payload" firmware, 
sometimes there are 2 images, one in flash region protected against any 
writes.
But still, the bootloader is in the same flash memory, nothing like 
mask-ROM from the old days.


> I've seen products with three levels of boot. The first bootloader cannot be changed in the field without special hardware. The second bootloader can be upgraded by the first bootloader, in case bugs are found in the second bootloader. The third boot stage is the actual firmware for the product.

Yes, that's the drill, although in case I need the intermediate 
bootloader, I can still upload it as regular firmware and then run it as 
2nd tier bootloader for actual firmware upload.


Roman


More information about the Synth-diy mailing list