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

#define NRF_MESH_DFU_TX_SLOTS 8

Hello Team,

In the documentation i found following:

#define NRF_MESH_DFU_TX_SLOTS   8

Number of concurrent DFU transmissions available.

Definition at line 50 of file nrf_mesh_config_dfu.h.

Does this explicitly means, we can not perform DFU on mesh that has more than 8 nodes ? if not what is meant  by that ?

Thanks 

  • Hi,

    NRF_MESH_DFU_TX_SLOTS has nothing to do with the number of total nodes in the network.

    The way that our DFU solution for Bluetooth Mesh works, is that the firmware is split in many small packets, and those packets are sent over the air. Because of the way the mesh network works, it is necessary to send the packets multiple times in order to ensure they are all received by all recipients. Each packet is placed in a "TX slot", from which it is sent several times (with increasing delays). Once all transmissions for a given packet are over the slot is ready for a new packet.

    The NRF_MESH_DFU_TX_SLOTS configuration sets how many TX slots can be used. (I.e. how many parts of firmware should be distributed concurrently.) If you increase this value then theoretically you may increase the speed of the transfer, but you will also get more packet collisions which reduces the throughput. If you decrease this value then you reduce the amount of packet collisions but at the same time decrease the speed of the transfer. The value 8 has been working great for us in our tests, and so it is probably best to leave it unchanged.

    Regards,
    Terje

Related