Add DFU support to custom HCI_RPMSG netcore image

I have separate app core enabled with DFU and secure boot. I added all that support with help from this ticket  nRF5340 Firmware Update from external NOR QSPI flash 

DFU for net core works fine.But it only works with an hci_rpmsg included automatically. How can I include the netcore DFU support in modified hci_rpmsg project. We compile this project but no "net_core_app_update.bin" is generated. How can I generate this DFU binary?

On app core image I have following configs enabled?

prj.conf

CONFIG_NRF53_UPGRADE_NETWORK_CORE=y
CONFIG_BOOT_IMAGE_ACCESS_HOOKS=y
CONFIG_PM_EXTERNAL_FLASH_MCUBOOT_SECONDARY=y
CONFIG_ADD_MCUBOOT_MEDIATE_SIM_FLASH_DTS=y

/child_image/mcuboot/prj.conf

CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x10000
CONFIG_NORDIC_QSPI_NOR=y
CONFIG_NORDIC_QSPI_NOR_FLASH_LAYOUT_PAGE_SIZE=4096
CONFIG_NORDIC_QSPI_NOR_STACK_WRITE_BUFFER_SIZE=16

CONFIG_PCD_APP=y
CONFIG_UPDATEABLE_IMAGE_NUMBER=2
CONFIG_FLASH_SIMULATOR=y
CONFIG_FLASH_SIMULATOR_DOUBLE_WRITES=y
CONFIG_FLASH_SIMULATOR_STATS=n
CONFIG_BOOT_UPGRADE_ONLY=y


# Enable flash operations.
# CONFIG_SPI=y
CONFIG_FLASH=y
# This must be increased to accommodate the bigger images.
CONFIG_BOOT_MAX_IMG_SECTORS=256

# Disable netcore image OTA udpate
CONFIG_BOOT_IMAGE_ACCESS_HOOKS=n

Parents Reply
  • As show below in static file. We have an external flash. We want to place both app core and net core DFU images in external flash instead of the internal. We do not have enough space in internal. Also a region in external flash is dedicated for the file system to store the configuration and other data.

    That is why we require to define pm_static.yml file.

    external_flash:
      address: 0x0
      end_address: 0x200000
      region: external_flash
      size: 0x200000
    
    mcuboot_secondary:
      address: 0x0
      device: mx25r16
      region: external_flash
      size: 0x100000
    
    mcuboot_secondary_1:
      address: 0x100000
      device: mx25r16
      end_address: 0x13FFFF
      region: external_flash
      size: 0x40000
    
    littlefs_storage:
      address: 0x140000
      device: mx25r16
      region: external_flash
      size: 0xC0000
    
    mcuboot_primary_1:
      address: 0x0
      device: flash_ctrl
      end_address: 0x40000
      region: ram_flash
      size: 0x40000
    
    ram_flash:
      address: 0x40000
      end_address: 0x40000
      region: ram_flash
      size: 0x0

Children
Related