AnsweredAssumed Answered

How to create a non-encrypted factory image with custom secondary bootloader on LPC11U68

Question asked by David M. on Mar 18, 2019
Latest reply on Mar 28, 2019 by ZhangJennie

Hi,
We are working on a firmware for the LPC11U68 (custom PCB design), and we try to integrate a secondary bootloader (SBL) because the primary bootloader (DFU via ISP-mode on USB MSC) is not suitable for our application.
I carefully read and follow the instruction of the application note AN12037 (LPC11U6x USB DFU Secondary Bootloader, Rev. 1 – September 2017). However, I did not find a way to create a simple factory image with a custom SBL, i.e. a binary that integrates both the custom SBL and the user application.
The “lpc11xx_secimgcr.exe” provided in the “image-creator-tools” seems to only give the option to create encrypted factory image through the “--factory-image-create” option. Is there another option to create non-encrypted factory image using this tool, or to combine the SBL binary with the application using another tool?

Here are the details of the steps I followed to create the custom SBL and the SBL-compatible firmware. Note that I develop with MCUXpresso v10.

  • Custom SBL: Based on the project “sbl_dfu_lpc11u60” given in the application note’s sources, I customized the SBL to our needs. When programmed on the LPC11U68, (via SWD or primary bootloader), the SBL works as expected (LpcDevice in device manager and found by “dfu-util.exe” with option “-l”).
  • SBL-compatible firmware: I modified our firmware to integrate the required header and memory map as described in the application note:
    • Automatic linker script disabled,
    • Definition of memory region to take into account the SBL space,
    • Definition of the image header with the firmware version,
    • Generation of the CRC using “lpc11xx_secimgcr.exe”
  • SBL DFU tests: When the SBL is programmed, the DFU works as expected.

 

Thanks for your support.

 

David

Outcomes