nRF5340 netcore update

Hello,

We are developing a system that have the nRF5340 as a part of several MCUs, and we want to be able to upgrade both cores.

According to this: DFU for the nRF5340 SoC it is possible to upgrade to do a non-simultaneous update using serial DFU, which is what we want as we don't have external flash in hardware. But I am also struggling to do the update on the DK using the external flash.

Using ncs v3.0.2, I have tried following "Exercise 1 – DFU over UART", but this unfortunately ends with "This course does not cover how to use Serial Recovery to update the network core.", and as no code is running on the network core, the suggested files are not generated.

I have also tried merging in some code from the "Optional: Simultaneous updates for both cores of the nRF5340", but I don't want to perform the update over Bluetooth.

I have made an example project here: https://github.com/vitalthings/nrf53_update where the latest commit does not compile due to

So my questions are:

  1. Do you have any code, examples or guides that use the "non-simultaneous update" for the netcore?
  2. When updating the "new net core" from the mcuboot_secondary slot, does mcuboot automatically detect where place the image in, or is there some command required to specify that it should be copied to the net core instead of the app core?
  3. When setting the config flag "SB_CONFIG_SECURE_BOOT_NETCORE=y" and "SB_CONFIG_NETCORE_APP_UPDATE=y" I get an error that the correct partitions do not exist and the compilation fails with PM_MCUBOOT_PRIMARY_1_ID and PM_MCUBOOT_SECONDARY_1_ID not found. If I have understood correctly, the DFU for the nRF5340 SoC description only requires partition mcuboot_primary_1 (for the pcd RAM). How can I configure these partitions correctly?

Thank you,
Sigurd

Related