Firmware Check and Installation

flowchart TD
Check --> Meta{"compatible metadata?"}
Meta -- Yes--> Offer
Offer --> Exclusive
Exclusive --> Download
Download --> Verify{"valid image?"}
Verify -- Yes--> Write["inactive partition"]
Write --> Boot["mark boot"]
Boot --> Reboot
Meta -- No--> Error
Verify -- No--> Error