Where can I find a more detailed description of the app_signed.hex file?

Hi!

The project in question uses ncs 2.2.0 and Zephyr 3.2.99. The build is made through the VS Code ncs extension and the CONFIG_BOOTLOADER_MCUBOOT=y configuration is set in order to use MCUboot. The build generates the app_signed.hex file, which I want to learn more about. According to arm documentation about the Intel HEX format, there are 5 types of records that can be found in a .hex file: data record, end-of-file record, extended segment address record, extended linear address record and start linear addres record, which the documentation tells that applies for MDK-ARM only. In the app_signed.hex files I've seen, I have only been able to find the following types of record: data, end-of-file and extended linear address. I have an application that parses and handles an app.signed.hex files to manually perform a DFU (performing a DFU in any other way is out of question) and I want to know which record types I can expect finding in an app_signed.hex file. I am already handling data, end-of-file and extended linear address record types and my questions, finally, are:

  1. Do I need to handle other record types?
  2. Where can I find more information about the app_signed.hex file? I have already taken a look at this ncs docs page, but little information about the app_signed.hex is given.
Parents
  • Hi,

    Do I need to handle other record types?

    No. Intel hex is just a way of representing a binary file with address information and checksum in a text file format. You normally do not need to digg into it, and also, the .hex file is encoded exactly the same regardless if the application is signed or not.

    Where can I find more information about the app_signed.hex file? I have already taken a look at this ncs docs page, but little information about the app_signed.hex is given.

    You can take a look at the table under Output build files for details of the different files that are generated during a build. In short, the app_signed.hex is the binary file that is signed in the form expected by MCUBoot, and then converted in to a hex file.

Reply
  • Hi,

    Do I need to handle other record types?

    No. Intel hex is just a way of representing a binary file with address information and checksum in a text file format. You normally do not need to digg into it, and also, the .hex file is encoded exactly the same regardless if the application is signed or not.

    Where can I find more information about the app_signed.hex file? I have already taken a look at this ncs docs page, but little information about the app_signed.hex is given.

    You can take a look at the table under Output build files for details of the different files that are generated during a build. In short, the app_signed.hex is the binary file that is signed in the form expected by MCUBoot, and then converted in to a hex file.

Children
No Data
Related