0. System is reset
1. The MBR runs first and checks the UICR registers to see if bootloader exists. If it does it gives control to bootloader.
2. The bootloader will enter DFU mode if one of the DFU entering methods are used (button press, register set)
3. DFU mode enables a transport which allows for transferring a new image into Bank1
4. The image in Bank1 is checked for validity
5. If valid, Bank1 is transferred to Bank0
6. Then control is handed over to the application in Bank0
1. From main app, after checking validity, copy new image from external flash to Bank1
2. Reset device to get into bootloader
3. Bank1 transferred to Bank0
4. Control is handed over to Bank0
1. Is this flow even possible?
2. In Step1
a. Should the memory copied into Bank1 be the FW hex (binary) or is there some special format for this?
b. Should I be updating the bootloader settings page here?
c. How do tell the bootloader where Bank1 is?
d. How do I flag to the bootloader that there is a new validated application waiting in Bank1?