Firmware upgrades

Discussion created by lpcware Employee on Jun 15, 2016
Content originally posted in LPCWare by Muis on Mon Jan 14 09:59:45 MST 2013
I always thought that for upgrading firmware a secondary bootloader was required, but when browsing the LPC11Uxx USB ROM examples, i saw an example application (USB_ROM_MSC_HID_DFU) that has DFU (Device upgradeable firmware) functionality, and just calls flash_write from your main program to overwrite the current firmware. I dont see any code that copies your main code to RAM first before it calls flash_write. So can someone explain how this works?