1.6 USB Device HID Bootloader
The USB Device HID bootloader Library can be used to upgrade firmware on a target device without the need for an external programmer or debugger.
Features
Supported on CORTEX-M and MIPS based MCUs
Uses Harmony 3 USB Device HID driver to communicate
Supports Live update
Takes Normalized Hex File as input
Uses Unified Host application to receive the hex file from Host PC
USB Device HID Bootloader Block Diagram
The Bootloader framework is divided into 2 sub-systems
Bootloader Task:
Erases the Flash memory
Programs the hex file records into Flash memory
Computes a CRC check of the Application in Program Memory
Jumps to the Application
Calls the DataStream Task at end of its every state machine execution
This Task routine takes an interface-agnostic approach to the actual communication medium
Runs in Cooperative mode with other tasks in the system
Datastream Task:
This Task implements the USB Device HID communication interface to the receive the hex file from the Unified Host Application running on Host PC
This Task is called from Bootloader Task routine