Two Stage Boot-loader

with MathWorks

Highly recommended in safety critical systems, this two stage bootloader obtains control of the processor at startup and passes control to a valid executable, provides host connectivity services, and conditionally executes the flash program update. The two stage bootloader includes flash corruption protection as opposed to the one stage bootloader. Implemented this with a generic architecture to make it portable for several microcontroller families. Prototyped the technical concept, and integrated with the existing product infrastructure to make it commercially viable. This project is included in R2015b and higher versions of Simulink and hardware support packages.

Keywords: C, firmware, two stage bootloader, ARMCC, GCC, STMCubeF4, Makefile, ARM Cortex-M