Which external flash partition is used for a full modem update?

I am using SDK v2.5.0 on custom board.

The board has an external 4MB flash chip.

I am wondering though which paritition will be used for the update process, and how that would play with other partitions on the external flash.

Does the modem update use the default external_flash partition, and do I need to ensure that default partition is large enough to hold the full update?

With my current board configuration, parition manager is reporting the following:

external_flash (0x400000 - 4096kB):
+--------------------------------------------------------+
| 0x0: ext_flash_partition (0x100000 - 1024kB) |
| 0x100000: ext_flash_logs_partition (0x100000 - 1024kB) |
| 0x200000: mcuboot_secondary (0xe8000 - 928kB) |
| 0x2e8000: external_flash (0x118000 - 1120kB) |
+--------------------------------------------------------+

The external_flash partition has been reduced to 1120KB which is too small for the update.
I can however, remove the ext_flash_partition and ext_flash_logs_partition if required.

  • Hello,

    The external_flash partition has been reduced to 1120KB which is too small for the update.
    I can however, remove the ext_flash_partition and ext_flash_logs_partition if required.

    Yes, you should do that. The full modem update requires 4MB of available space, so you should free up all of that space for modem DFU.

  • If I understand correctly, the external_flash partition will be used for the full firmware update, and I need to make sure that it is large enough to store the update files which are downloaded?

    Can you specify which file system is used? Is it LittleFS? If so will it play nicely if other files exist in that partition (providing there is sufficient space remaining)?

  • The firmware image is stored directly in the flash without the use of a file system.

    SODAQHW said:
    If so will it play nicely if other files exist in that partition (providing there is sufficient space remaining)?

    No. There is no space for having a file system on the external flash while also using it for modem firmware update. You should reserve all space for the modem update.

     https://devzone.nordicsemi.com/f/nordic-q-a/106163/firmware-update-of-nrf9160-through-uart

  • Hi Hakon,

    Could you clarify whether it needs the whole physical flash device to be reserved or just the partition? The reason I ask is because of the secondary MCU Boot slot (mucboot_secondary) is on the same flash device.

    If it is just the partition, is it correct to say that the update system uses the external_flash partition, but it will be descructive to any data which may already exist in that partition?

    Separately, I need to ensure that the external_flash partition is large enough for the full update data.

  • It needs 4MBs. So yes, that all the flash on your board.

1 2