This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Mesh DFU over BLE by using nRF52840 DK boards

Hi Nordic team,

I have 2 nRF52840 DK boards.

I followed the steps mentioned in the below link, I am able to Transfer the DFU archive over serial with nrfutil(LED keeps blinking on the DFU performed board).http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v1.0.1%2Fmd_doc_getting_started_dfu_quick_start.html

But when i checked to verify that the boot loader is working correctly or not, I am getting below error, I am not sure, What mistake i have done ? Please help me on this as well.

Downloads\nrf5_SDK_for_Mesh_v2.1.1_src\tools\dfu>python bootloader_verify.py 683713355 com5
Device family: NRF51
Reading UICR.. ERROR: The --family option given with the command (or the default from
ERROR: nrfjprog.ini) does not match the device connected.
Error calling nrfjprog with arguments -s 683713355 --memrd 0x10001014 --n 4 --w 32 --family NRF51.

Please provide your inline comments to below queries,

1. After successful transfer the DFU archive over serial with nrfutil, Now how to transfer the firmware packets from one DK board(Contains firmware transferred over serial with nrfutil) to another DK board ? 

Is it automatically perform DFU over BLE from one board to another board ?  Please let me know the exact test steps to transfer DFU from one board to another board over mesh through BLE.

2. What is test bench mark to know DFU over BLE is done between one nRF52840 DK board with firmware package and another board with out firmware package ?

3. How to know two devices(One nRF52840 DK board with firmware package and another board with out firmware package) are connected in mesh, while performing DFU ?

  • Hi Prasanna, 

    Q1: The serial bootloader will automatically start transferring firmware image to the other mesh nodes over BLE after it has received the firmware image over the serial interface. This is stated in the DFU quick start guide.  

    Q2: The mesh node will print DFU END! in the log output when DFU has finished.

    Q3: The Bluetooth Mesh is a flooding mesh, i.e. no connections are made.  The mesh nodes listen for incoming advertisement packets and then forward these to the other nodes within range. If a mesh node is outside the range of the other mesh nodes when DFU is performed and then joins the mesh at a later point, then it will automatically detect that its firmware version is outdated and will request the mesh to resend the new firmware.  

    Best regards

    Bjørn 

Related