Patent ID: 8578362

Claim:
A method for updating software on an electronics system that includes a processor switchable between a maintenance mode and an application mode and non-volatile memory having a plurality of sectors, including a key sector, a boot sector, a test link sector and an application sector, the processor configured to automatically look to particular sectors of the non-volatile memory for initialization information in a set sequence during initialization until a sector in the set sequence is reached containing suitable key information, with empty sectors of the non-volatile memory in the set sequence ignored by the processor and with the key sector having a higher priority in the set sequence than the boot sector, the method comprising: activating a manual switch to operate the processor in the maintenance mode, wherein the maintenance mode directs the electronics system to access software stored in the test link sector; over-writing original application software stored in the application sector of the non-volatile memory to store cloned boot software in the application sector such that original boot software remains in the boot sector of the non-volatile memory; manually switching the electronics system to operate in the application mode, thereby directing the electronics system to access the cloned boot software from the application sector of the non-volatile memory; storing a temporary key in the key sector of the non-volatile memory that overrides an original key stored in the boot sector of the non-volatile memory and is configured to instruct the processor to boot the cloned boot software from the application sector of the non-volatile memory upon initialization; over-writing the original boot software in the boot sector of the non-volatile memory to store new boot software in the boot sector after the temporary key has been stored; storing a new key in the boot sector of the non-volatile memory alongside the new boot software, the new key configured to instruct the processor to boot the new boot software from the boot sector of the non-volatile memory upon initialization; erasing the temporary key in the key sector of the non-volatile memory; and manually switching the electronics system to operate in the maintenance mode, thereby directing the electronics system to access the new boot software from the boot sector of the non-volatile memory.