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

How is the connection interval controlled with multiple slaves?

If I have 10 slaves and one master in a bluetooth low energy network, and the connection interval for all 10 slaves are set to 7.5ms, how would the master manage this?

If I want to send a "trigger" signal to all 10 slaves, so they can act at the closest time. how should I do this? For example, all slaves are controlling their own ADCs, and I want the ADCs to start sampling at the same time after received the "trigger" signal from the master.

Parents
  • When the number of slaves increase, and the connection interval is kept low, the connection events will start overlapping at some point. At this stage, the device will have to drop events. I'm not sure what device you are using, but our SoftDevices will try to serve links that are close to supervision timeout. If there is a lot of interference, this particular setup could be very fragile.

    For your second question, it depends on your tolerances for "at the same time". If it's within the same second, simply sending e.g. write commands or notifications could be good enough. You could time this yourself, by looking at the spacing between the TX_COMPLETE events. These signalize that the remote peer has ACKed the packet.

    If you need millisecond precision, you should look into implementing the Current Time Service and synchronize time among the peers. Then you can signal a certain timestamp you want the sampling to start at.

  • You have not yet revealed what master you are using, so I cannot say for sure. But the more recent S13x v2 should indeed be a bit smart in the scheduling. It depends a lot on the links and how they overlap. We should try to round-robin a bit, but there are many factors (interference, short supervision timeouts, etc.) that can break this.

    I think your best shot would be to test the timing of your solution extensively, because the SoftDevice cannot make any promises on link fairness. It will try its hardest to keep all links alive.

Reply
  • You have not yet revealed what master you are using, so I cannot say for sure. But the more recent S13x v2 should indeed be a bit smart in the scheduling. It depends a lot on the links and how they overlap. We should try to round-robin a bit, but there are many factors (interference, short supervision timeouts, etc.) that can break this.

    I think your best shot would be to test the timing of your solution extensively, because the SoftDevice cannot make any promises on link fairness. It will try its hardest to keep all links alive.

Children
No Data
Related