When writing firmware for embedded systems, the firmware is usually meant to run
on many identical devices. These devices often have their own serial
number, public and private keys, or some other unique parameters. These
parameters need to be provisioned per device, either by generating unique
firmware binaries or by writing the values to the device’s persistent storage, like
external flash or the EEPROM.
Thanks for sharing @Karlz! Note that another option for embedded a binary is to translate it into a header file. This is super easy with xxd -i . Check it out: https://unix.stackexchange.com/a/176112.
Hi Amund, this could not have come at a better time. I am trying to solve the exact same problem on my LoRaWAN devices as we are getting ready to scale. Lots of good input that I can put to use. We deploy our own private LoRaWAN network.
@stevenlin - Welcome to Interrupt! It sounds like your two files (A.hex and B.hex) have some overlapping regions. Make sure the addresses are distinct and they should merge fine.
hi francois
in platform (nordic nrf52840,sdk 15.3)
i add the section(image_hdr) ,so it will be overlapping.
to use mergerhex to merger,not use nrfjprog (loadfile to change the [Unique Parameters)