Building nrf Connect SDK mesh DFU distributor for nrf52833

Hi,

    nrf Connect mesh distributor gives memory overflow when build for nrf52833.  I have uploaded the build configuration I am using. Also attached the build log.

I have tried the solution for memory overflow provided on devzone, increased the

CONFIG_PM_PARTITION_SIZE_MCUBOOT=0xc000 to CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x10000 but still the problem persist.
also tried to increase upto CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x80000, after this the build is successful but flashing to the board causes another error
 
Log for build with CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x10000

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
* Executing task: nRF Connect: Generate config nrf52833dk_nrf52833 for /Users/admin/Desktop/Connect_SDK/distributor
Building distributor
/bin/sh -c west build --build-dir /Users/admin/Desktop/Connect_SDK/distributor/build /Users/admin/Desktop/Connect_SDK/distributor --pristine --board nrf52833dk_nrf52833 --no-sysbuild -- -DNCS_TOOLCHAIN_VERSION:STRING="NONE"
-- west build: generating a build system
Loading Zephyr default modules (Zephyr base).
-- Application: /Users/admin/Desktop/Connect_SDK/distributor
-- CMake version: 3.20.5
-- Found Python3: /opt/nordic/ncs/toolchains/4ef6631da0/opt/python@3.9/bin/python3.9 (found suitable exact version "3.9.6") found components: Interpreter
-- Cache files will be written to: /Users/admin/Library/Caches/zephyr
-- Zephyr version: 3.3.99 (/opt/nordic/ncs/v2.4.2/zephyr)
-- Found west (found suitable version "1.0.0", minimum required is "0.7.1")
-- Board: nrf52833dk_nrf52833
-- Found host-tools: zephyr 0.16.0 (/opt/nordic/ncs/toolchains/4ef6631da0/opt/zephyr-sdk)
-- Found toolchain: zephyr 0.16.0 (/opt/nordic/ncs/toolchains/4ef6631da0/opt/zephyr-sdk)
-- Found Dtc: /opt/nordic/ncs/toolchains/4ef6631da0/bin/dtc (found suitable version "1.6.1", minimum required is "1.4.6")
-- Found BOARD.dts: /opt/nordic/ncs/v2.4.2/zephyr/boards/arm/nrf52833dk_nrf52833/nrf52833dk_nrf52833.dts
-- Generated zephyr.dts: /Users/admin/Desktop/Connect_SDK/distributor/build/zephyr/zephyr.dts
-- Generated devicetree_generated.h: /Users/admin/Desktop/Connect_SDK/distributor/build/zephyr/include/generated/devicetree_generated.h
-- Including generated dts.cmake file: /Users/admin/Desktop/Connect_SDK/distributor/build/zephyr/dts.cmake
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 

Log for build with CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x80000

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
* Executing task: nRF Connect: Build: distributor/build (active)
Building distributor
/bin/sh -c west build --build-dir /Users/admin/Desktop/Connect_SDK/distributor/build /Users/admin/Desktop/Connect_SDK/distributor
[0/1] Re-running CMake...
Loading Zephyr default modules (Zephyr base (cached)).
-- Application: /Users/admin/Desktop/Connect_SDK/distributor
-- CMake version: 3.20.5
-- Found Python3: /opt/nordic/ncs/toolchains/4ef6631da0/opt/python@3.9/bin/python3.9 (found suitable exact version "3.9.6") found components: Interpreter
-- Cache files will be written to: /Users/admin/Library/Caches/zephyr
-- Zephyr version: 3.3.99 (/opt/nordic/ncs/v2.4.2/zephyr)
-- Found west (found suitable version "1.0.0", minimum required is "0.7.1")
-- Board: nrf52833dk_nrf52833
-- Found host-tools: zephyr 0.16.0 (/opt/nordic/ncs/toolchains/4ef6631da0/opt/zephyr-sdk)
-- Found toolchain: zephyr 0.16.0 (/opt/nordic/ncs/toolchains/4ef6631da0/opt/zephyr-sdk)
-- Found BOARD.dts: /opt/nordic/ncs/v2.4.2/zephyr/boards/arm/nrf52833dk_nrf52833/nrf52833dk_nrf52833.dts
-- Generated zephyr.dts: /Users/admin/Desktop/Connect_SDK/distributor/build/zephyr/zephyr.dts
-- Generated devicetree_generated.h: /Users/admin/Desktop/Connect_SDK/distributor/build/zephyr/include/generated/devicetree_generated.h
-- Including generated dts.cmake file: /Users/admin/Desktop/Connect_SDK/distributor/build/zephyr/dts.cmake
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Log for flash with CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x80000

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
* Executing task: nRF Connect: Build: distributor/build (active)
Building distributor
/bin/sh -c west build --build-dir /Users/admin/Desktop/Connect_SDK/distributor/build /Users/admin/Desktop/Connect_SDK/distributor
[0/4] Performing build step for 'mcuboot_subimage'
ninja: no work to do.
* Terminal will be reused by tasks, press any key to close it.
* Executing task: nRF Connect: Flash: distributor/build (active)
Flashing build to 682782848
/bin/sh -c west flash -d /Users/admin/Desktop/Connect_SDK/distributor/build --skip-rebuild --dev-id 682782848
-- west flash: using runner nrfjprog
-- runners.nrfjprog: Flashing file: /Users/admin/Desktop/Connect_SDK/distributor/build/zephyr/merged.hex
[error] [ Worker] - Address 0x00080000 does not map to a known memory.
[error] [ Client] - Encountered error -173: Command erase_file executed for 71 milliseconds with result -173
ERROR: The file specified is not a valid hex file, has data outside valid areas
ERROR: or does not have data in valid areas.
NOTE: For additional output, try running again with logging enabled (--log).
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

I am new to nrf Connect SDK, kindly guide me how to resolve this issue.

IDE used;- VS Code

Development board used :- nrf52833dk

SDK used :- nrf Connect SDK v2.4.2

Thanks

Parents
  • Hello,

    I have been assigned this ticket, and I will look into it and will update you accordingly.

    Thank you for your patience.

    BR, Naeem

  • Hello,

        Thank you for the response. I am waiting for your answer.

    Thanks

  • Hi,

    The DFU related models are a bit special with regards to flash requirements, since in order to do DFU the flash requirement for the application doubles. The reason for this is you need to simultaneously store both the currently running application, and the new version of the application (that you will switch over to after the download.) Therefore you will typically find that while mesh DFU does fit on the nRF52840, it will not fit on nRF52833, nRF52832, or any of the lower-end devices of the nRF52 series.

    Regards,
    Terje

  • Hi,

      I used MX25R6435F external flash with nrf52833 and it is working fine.

      But when I tried DFU using Mesh Distributor on nrf52840 and Mesh Target on nrf52833 with external flash, firmware was successfully transferred but Target device was not updated, DFU failed reason = 3.

    Log of Mesh Distributor

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    [01:01:38.855,224] <dbg> bt_mesh_blob_cli: broadcast_complete: continuing
    [01:01:38.855,255] <dbg> bt_mesh_blob_cli: chunk_send: 28 / 37 size: 113
    [01:01:38.855,285] <dbg> bt_mesh_blob_cli: blob_cli_broadcast: 1 targets
    [01:01:39.725,006] <dbg> bt_mesh_blob_cli: broadcast_complete: continuing
    [01:01:39.725,036] <dbg> bt_mesh_blob_cli: chunk_send: 29 / 37 size: 113
    [01:01:39.725,036] <dbg> bt_mesh_blob_cli: blob_cli_broadcast: 1 targets
    [01:01:40.453,155] <dbg> bt_mesh_blob_cli: broadcast_complete: continuing
    [01:01:40.453,186] <dbg> bt_mesh_blob_cli: chunk_send: 30 / 37 size: 113
    [01:01:40.453,186] <dbg> bt_mesh_blob_cli: blob_cli_broadcast: 1 targets
    [01:01:41.211,395] <dbg> bt_mesh_blob_cli: broadcast_complete: continuing
    [01:01:41.211,425] <dbg> bt_mesh_blob_cli: chunk_send: 31 / 37 size: 113
    [01:01:41.211,425] <dbg> bt_mesh_blob_cli: blob_cli_broadcast: 1 targets
    [01:01:42.047,058] <dbg> bt_mesh_blob_cli: broadcast_complete: continuing
    [01:01:42.047,088] <dbg> bt_mesh_blob_cli: chunk_send: 32 / 37 size: 113
    [01:01:42.047,088] <dbg> bt_mesh_blob_cli: blob_cli_broadcast: 1 targets
    [01:01:42.807,098] <dbg> bt_mesh_blob_cli: broadcast_complete: continuing
    [01:01:42.807,159] <dbg> bt_mesh_blob_cli: chunk_send: 33 / 37 size: 113
    [01:01:42.807,159] <dbg> bt_mesh_blob_cli: blob_cli_broadcast: 1 targets
    [01:01:43.599,060] <dbg> bt_mesh_blob_cli: broadcast_complete: continuing
    [01:01:43.599,090] <dbg> bt_mesh_blob_cli: chunk_send: 34 / 37 size: 113
    [01:01:43.599,121] <dbg> bt_mesh_blob_cli: blob_cli_broadcast: 1 targets
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Log of Mesh Target

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    [01:00:33.324,523] <dbg> bt_mesh_blob_srv: handle_chunk: 10/37 (113 bytes)
    [01:00:34.083,953] <dbg> bt_mesh_blob_srv: handle_chunk: 11/37 (113 bytes)
    [01:00:34.923,461] <dbg> bt_mesh_blob_srv: handle_chunk: 12/37 (113 bytes)
    [01:00:35.724,731] <dbg> bt_mesh_blob_srv: handle_chunk: 13/37 (113 bytes)
    [01:00:36.500,885] <dbg> bt_mesh_blob_srv: handle_chunk: 14/37 (113 bytes)
    [01:00:37.281,219] <dbg> bt_mesh_blob_srv: handle_chunk: 15/37 (113 bytes)
    [01:00:38.091,552] <dbg> bt_mesh_blob_srv: handle_chunk: 16/37 (113 bytes)
    [01:00:38.887,847] <dbg> bt_mesh_blob_srv: handle_chunk: 17/37 (113 bytes)
    [01:00:39.674,682] <dbg> bt_mesh_blob_srv: handle_chunk: 18/37 (113 bytes)
    [01:00:40.493,255] <dbg> bt_mesh_blob_srv: handle_chunk: 19/37 (113 bytes)
    [01:00:41.302,642] <dbg> bt_mesh_blob_srv: handle_chunk: 20/37 (113 bytes)
    [01:00:42.108,215] <dbg> bt_mesh_blob_srv: handle_chunk: 21/37 (113 bytes)
    [01:00:42.903,228] <dbg> bt_mesh_blob_srv: handle_chunk: 22/37 (113 bytes)
    [01:00:43.687,408] <dbg> bt_mesh_blob_srv: handle_chunk: 23/37 (113 bytes)
    [01:00:44.478,851] <dbg> bt_mesh_blob_srv: handle_chunk: 24/37 (113 bytes)
    [01:00:45.275,085] <dbg> bt_mesh_blob_srv: handle_chunk: 25/37 (113 bytes)
    [01:00:46.014,251] <dbg> bt_mesh_blob_srv: handle_chunk: 26/37 (113 bytes)
    [01:00:46.808,471] <dbg> bt_mesh_blob_srv: handle_chunk: 27/37 (113 bytes)
    [01:00:47.619,232] <dbg> bt_mesh_blob_srv: handle_chunk: 28/37 (113 bytes)
    [01:00:48.392,059] <dbg> bt_mesh_blob_srv: handle_chunk: 29/37 (113 bytes)
    [01:00:49.157,897] <dbg> bt_mesh_blob_srv: handle_chunk: 30/37 (113 bytes)
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Also I have tried DFU with Mesh Distributor and Mesh Light Switch sample after adding BLOB TRANSFER MODEL and FIRMWARE UPDATE SERVER model to it. After successful transfer of the firmware it showed invalid BLOB ID.

    Thanks

  • Hi,

       Gentle reminder

    Thanks

  • Hi, 

       Gentle reminder.

    Thanks

  • Hi 

    I am very sorry for the slow response on this one. Are you still having issues with this? 

    We are currently very low on staff during the Christmas period, but I will make sure your case gets priority when most of us are back in office next week. 

    Best regards
    Torbjørn

Reply
  • Hi 

    I am very sorry for the slow response on this one. Are you still having issues with this? 

    We are currently very low on staff during the Christmas period, but I will make sure your case gets priority when most of us are back in office next week. 

    Best regards
    Torbjørn

Children
No Data