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

nRF51 sensor network with SoftDevice S120: latency and througput?

Greetings,

I'd like to develop a wireless sensor network based on your products, but have a few concerns based on my lack of knowledge of how Bluetooth LE works.

I've checked out several Developer Zone questions, and know that it's possible to have a master nRF51 connected to 6 other nRF51 (acting as slaves that transmit sensor information) through the S120 SoftDevice.

I'd like to know what ranges to expect in terms of bandwidth and latency, because I've read that BLE isn't really suited for data streaming.

  • Bandwidth:

Each one of my sensors outputs 26 bytes @ 100Hz, roughly 21 kbit/s. Can I expect 21 kbit/s in each of the simultaneous connections? Table 32 (BLE data throughput), in page 50 of the S120 manual doesn't make it look promising, but maybe I don't understand the table fully. Can I maybe achieve my needed data rates by limiting the number of nodes to 3 slaves, 1 master?

  • Latency:

Latency is also crucial in my application. The S120 SoftDevice recommends a t_EEO of 2.25 ms, for a minimum connection interval of ( t_EEO x Links ) (roughly 18 ms for 8 links). Disregarding the connection/pairing delays, if configured to 4 nodes, 1 master and 3 slaves, can I expect a total latency of around 10 ms?

  • Etc:

I'd like to expand the size of the sensor network, up to 12-15 sensors. Can a piconet run alongside another piconet, or will it cause a lot of interference/lost packets?

And finally... if BLE throughput is not enough, does NS have any classic BT solutions that supports connections of multiple nodes (in a star topology)?


I understand that those are several questions, but any help would be greatly appreciated!

(Info taken from the S120 guide. Recommended T_EEO, page 18. Recommended intervals and windows page 43.)

  • Hi,

    I am currently experimenting a lot with throughput and latency in my mesh network: github.com/.../fruitymesh With the S130 Softdevice, at a connection interval of 7.5ms you'll be limited to about 2.7 kbyte/s by sending 20 byte per packet (which is approximately your 21 kbit/s). I am however experiencing issues where packets do get re-sent quite often and a bad link will severly cut into your throughput. The S130v2 should solve some of this as I have understood because it will allow to send multiple packets per connection interval. Maybe you could think of some preprocessing or compression of the sensor data? What kind of sensors are you talking about?

  • Bandwidth - With a connection interval of 7.5 ms and 20 bytes in each packet you can achieve a throughput of 21.3 kbps. You can expect to achieve this throughput with 3 slaves, but most likely not with 4. But it doesn't hurt to try. Why 3? Because 3 * tEEO < 7.5 ms, while 4 * tEEO > 7.5 ms.

    Latency - If you have a connection interval of 7.5 ms, this is the maximum latency you should expect, but only if every slave is able to send one packet in every connection interval.

    Etc. - It shouldn't be a problem having 2 piconets operating in the same room/area.

    We only support BLE.

Related