Mcuboot first stage, stadalone, bootloader create a merged.hex with two applications one in each slot

Hello,

I'm working on a project where I utilize mcuboot in standalone mode with two slots for updating a single application via mcumgr.

I have a scenario where I need to merge a .hex file, placing my main application in slot 1 and a test app in slot 0. The goal is to flash both mcuboot + test_app (slot 0) and the main app (slot 1) in a single .hex file during production.

I've implemented the method from this guide under "Adding a child image using Zephyr modules." While the merged.hex appears to include both applications, I'm facing an issue with mcumgr. It's unable to detect the application in slot 1, even though I can confirm its presence via the nrfconnect - programmer app.

Do you have any examples or guidance on this? Is such a use case supported by mcumgr/mcuboot?

Is there any specific metadata or configuration that mcumgr/mcuboot expects during a regular update via mcumgr, which might be causing the app in slot 1 to be undetectable?

Thank you for your assistance!

Parents Reply Children
  • Thank you,

    This made sense to me but I was worried mainly about two things:
      - how the partition manager would arrange the flash for both independent partitions: - this is solved with the same pm_static.yml on both apps
      - Any other mcuboot related things like mcuboot app headers, or image traillers or something else I might not even know that need to be created on the fly with mcumgr that by joining the two .hex files I could be breaking silently.

    Thank you!


Related