6
\$\begingroup\$

Im trying to decide between Bluetooth and Bluetooth LE. My device needs to transfer 375 bytes per second. Bluetooth LE can send packets of 20 bytes max, so this boils down to about 20 packets per second.

A Bluetooth low energy device used for continuous data transfer would not have a lower power consumption than a comparable Bluetooth device transmitting the same amount of data. It would likely use more power, since the protocol is optimised for small bursts.

Will Bluetooth LE will still be more power-efficient than Classic Bluetooth at this datarate (375 bytes per second)? And if so, at how many bytes/second will it be better to switch to Classic?

\$\endgroup\$
5
\$\begingroup\$

Bluetooth Low Energy is rated for 1Mbps, with a practical throughput of 305kbps. That's ~38 KILOBytes per second. It has a off to connected/transmiting latency of <6ms, compared to bluetooth classic of ~100ms. It saves energy by only being on when actually transmitting data, instead of keeping the link active as you would with Bluetooth Classic.

When you are talking about BLE being inefficient at continuous data transfer, it is in relation to streaming data in the range of hundreds of kilobits, i.e. audio or video. You are using less than 10% of the maximum transfer rate. BLE should be very well efficient for your intended purpose. 20 packets per second is a very very small amount of data.

Refs: http://www.medicalelectronicsdesign.com/article/bluetooth-low-energy-vs-classic-bluetooth-choose-best-wireless-technology-your-application

http://www.bluegiga.com/files/bluegiga/Pub%20files/Bluetooth_LE_comparison.pdf

\$\endgroup\$
  • 4
    \$\begingroup\$ The minimum connection interval is 7.5 ms, you can send at most 4 packets per connection interval, that makes (1000 / 7.5) * 4 * 20) = 10.6 KB/s (85 kbps). I don't know where that 38 KB/s is coming from, but 10 KB/s is the theoretical maximum for all available hardware right now (like the CC2540), and I haven't seen any reports in the wild of people who achieved anything close to that rate. Besides: that's using notifications, and dataloss can occur. Normally you want to use indications, where each packet will be acknowledged by the other side. \$\endgroup\$ – Muis Jan 15 '13 at 23:49
  • 1
    \$\begingroup\$ I discussed this with Bluegiga's support team, and they say that using indications the maximum achievable transfer rate will be around 1500 byes/s, so my figure of 375 bytes/s will be 25% of the practical maximum. Maybe that's still more power-efficient than if I would have used Classic Bluetooth, but I'm just wondering at how many KB/s it would be better to use Classic Bluetooth. If that's not until the hundreds of kilobits range, I will accept this as the answer, but than the Wikipedia paragraph is nonsense, since that rate is not even achievable. \$\endgroup\$ – Muis Jan 15 '13 at 23:52
  • \$\begingroup\$ @Joshua The 38KB/s rate is bluegiga's listed 305kbps rate, divided by 8 (8 bits = 1 byte), just so I could make an easier comparison between your needs and the possible BLE output. As for using indications vs notifications, do you need to verify your data between the sensor and the display (dataloss unacceptable), or is it realtime in which dataloss is okay (Essentially similar to TCP vs UDP). And as for the wiki quote, it's an uncited statement, just conjecture (I added a citation needed mark). \$\endgroup\$ – Passerby Jan 16 '13 at 2:36
  • \$\begingroup\$ A developer here claims to have achieved 33kb/s. \$\endgroup\$ – ThomasW Feb 25 '15 at 3:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.