MCUBoot + CPUAPP + FLPR with BLE DFU

Hi DevZone,

I am currently working on a project that uses MCUboot (DFU over BLE) on the CPUAPP core together with a custom FLPR application.

I successfully got this working by following the guide on signing an application with an FLPR payload:
https://nrfconnectdocs.nordicsemi.com/ncs/3.2.4/nrf/app_dev/device_guides/nrf54l/nrf54l_signing_with_payload.html

However, I still have a few open questions that I haven't been able to answer:

  1. Merging production images

    What is the recommended way to merge the signed CPUAPP + FLPR image with the MCUboot image? Ideally, I would like to generate a single production image instead of flashing MCUboot separately.

  2. Creating a DFU package

    What is the correct way to generate a BLE DFU ZIP package for a signed CPUAPP + FLPR image?

    I tried using the generate_zip.py script from the NCS, but the device always reports "invalid hash parameter" during the DFU process. The ZIP generated from a standard CPUAPP + MCUboot build works without any issues.

  3. Partition Manager

    Since the documentation mentions that Partition Manager will eventually be discontinued, is it already possible (or recommended) to build this setup without using Partition Manager? 

To make the issue reproducible, I created a minimal example based on the LED Blinky sample. The CPUAPP and FLPR applications blink different LEDs at different frequencies, and a Python script generates all required build artifacts.

Repository:
https://github.com/Notnac60/nrf54_cpuapp_flprapp_mcuboot

Any guidance would be greatly appreciated.

Best regards,

Dennis

Related