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

Mesh relay enable/disable

Hi!

We would like to install approx. 2000 pcs BLE devices in a mesh network. The device density is quite high (2x5 meters matrix, same level, no objects).

I think only couple of nodes should have relay functionality. Too many relays cause extreme network load, message cache overflow and ineffective network operation.

I plan to enable the relay function in 80 devices only. The distance between relays is 10-15 meters. The number of hops between the longest ends is about 20 hops, so TTL will be set to 24.

I plan to disable the relay, proxy and the advertisement functions in the normal nodes.

Is my approach correct? Will it work? What do you recommend to optimize the network? Shall I play with the retransmission parameters?

The next question is related to enable/disable relay functions: I would like to use the same fw in the nodes. Enable the relay is a configuration parameter. I couldn't find API function to do this. However there are public functions in the mesh source code core/include/network.h like network_opt_get/set. (mesh v5.0)

Is it recommended to use these functions to tune the relay function?

Parents Reply
  • Hi, 

    Looking into the assert you get, it means that the SoftDevice got an unexpected radio interrupt which is typically because the application used the radio outside of the timeslot. You can try to increase TIMESLOT_END_SAFETY_MARGIN_US in steps of 100 us upto 1000 us and see if that helps.

    Though it seems strange that you get the assert as well if you disable the proxy by the "#define MESH_FEATURE_PROXY_ENABLED 0".

Children
Related