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

How to maximize battery lifetime for a bluetooth long range system with 100 slave node and one master

With 100 battery powered bluetooth long range slave nodes connected to one master. To increase battery lifetime, Is is best to connect/disconnect all slave nodes to the master each 2 seconds (sleep between each connection) sequenctially or is it best to make all nodes (both master and slaves) just listen in RX mode and the broadcast if a node (master or slave) has something to say and then connect?  

Parents
  • Hello,

    I don't know what chip your master is running, but with the nRF you can't have 100 simultaneous connections. There is a limit on 20 concurrent BLE connections using our softdevice, so if you want to communicate with 100 nodes, you would have to cycle through the connections. 

    However, if you want to increase the battery lifetime, staying in RX mode is not a viable option, as this uses a lot of current. RX current = TX current, and it is actually quite much. The reason why BLE is power efficient is that when the devices are in a connection they will have bursts of communication, and turn the radio off between the connection events.

    I don't know how often you intend to communicate between the master (central) and each slave (peripheral), but one option is to connect to the master, send the data that you need to send, and then disconnect. After this, you can run a timer, and use the timeout interrupt to start advertising again, allowing the central to connect to the peripheral again.

    Best regards,

    Edvin

Reply
  • Hello,

    I don't know what chip your master is running, but with the nRF you can't have 100 simultaneous connections. There is a limit on 20 concurrent BLE connections using our softdevice, so if you want to communicate with 100 nodes, you would have to cycle through the connections. 

    However, if you want to increase the battery lifetime, staying in RX mode is not a viable option, as this uses a lot of current. RX current = TX current, and it is actually quite much. The reason why BLE is power efficient is that when the devices are in a connection they will have bursts of communication, and turn the radio off between the connection events.

    I don't know how often you intend to communicate between the master (central) and each slave (peripheral), but one option is to connect to the master, send the data that you need to send, and then disconnect. After this, you can run a timer, and use the timeout interrupt to start advertising again, allowing the central to connect to the peripheral again.

    Best regards,

    Edvin

Children
No Data
Related