If you have ever used your smartphone with a wireless speaker, with a hands-free car system, with wireless headphones or with a fitness band, then you have probably used Bluetooth. Bluetooth has been around for quite a while now and it is found in almost every Android smartphone and tablet. It comes in two main flavors — Classic (i.e. BDR/EDR) and Low Energy (i.e. BLE). The former is used for streaming audio to wireless Bluetooth speakers or headphones, while the latter is used for wearables.
Bluetooth Low Energy was added to the core Bluetooth specification in Bluetooth 4.0 and support was added to Android in Android 4.3. Compared to Classic Bluetooth, Bluetooth Low Energy (BLE) is designed to use significantly less power. As well as wearables devices, BLE allows Android apps to communicate with devices that have tighter power requirements, such as proximity sensors, heart rate monitors, and beacons.
Last summer, the Bluetooth Special Interest Group (Bluetooth SIG) announced Bluetooth 5 and Bluetooth 5 hardware has started to appear in devices, most notably in the Samsung Galaxy S8 and the Samsung Galaxy Note 8. However there has been some confusion, first about the actual benefits of Bluetooth 5 and secondly about the software support for it in devices with the right hardware.
First, some facts about Bluetooth 5:
- Bluetooth 5 extends and enhances the Bluetooth Low Energy aspects of Bluetooth, it does not alter Bluetooth Classic.
- BLE is not used for streaming audio to wireless speakers. This means that any notions of increased range or speed for audio streaming over Bluetooth BDR/EDR are wrong.
- Bluetooth 5 offers greater speed and distance for Bluetooth Low Energy connections but these are mutually exclusive, you either have greater speed or greater range, not both.
For more information about Bluetooth 5 and how it performs in the real world please read The truth about Bluetooth 5 – Gary explains and How fast is Bluetooth 5 on the Galaxy S8? – Gary explains. You might also like this video!
While the Samsung Galaxy S8 (and I assume the Note 8) have rudimentary software support for Bluetooth 5, it is almost useless. That might be a bit harsh, but the problem is that Android 7.x doesn’t have support for Bluetooth 5 and Samsung hasn’t released a software development kit to add Bluetooth 5 to Android on its devices. This means that a Samsung S8 can’t make a Bluetooth 5 connection to a Bluetooth 5 accessory. However, the accessory can make a Bluetooth 5 connection to the Samsung Galaxy S8 and it will accept that connection and work at the new speeds. What is missing is operating system level support for Bluetooth 5, and that comes with Android 8.o Oreo.
Android 8.0 brings full Bluetooth 5 support to the platform and allows developers to write apps which can discover and connect to Bluetooth 5 devices using the similar code as with Bluetooth 4.x. Google has added system calls which allow an app to determine if Bluetooth 5 is supported, specifically:
- isLe2MPhySupported() – returns true if Bluetooth 5 2Mbit/s connections are supported.
- isLeCodedPhySupported() – returns true if Bluetooth 5 long distance (i.e. coded) connections are supported.
- isLeExtendedAdvertisingSupported() – returns true if Bluetooth 5 Extended Advertising is supported.
On top of these system calls there are some other API additions like constants for which type of connection should be made (i.e. PHY_LE_2M and PHY_LE_CODED).
As is often the case with new technology, the road from specification to mainstream consumer availability is a long one. The Bluetooth Special Interest Group announced Bluetooth 5 in June 2016. The specification was then officially released in December 2016. During the first half of 2017 various development boards and devices started to support Bluetooth 5 in hardware, and now with the release of Android Oreo there is full software support.
However there are no Android smartphones today which have both the Bluetooth 5 hardware and Android 8.0 Oreo, for that to happen we will need to wait just a little longer. To find out how long then check out our guide Android 8.0 update: when will you get it?
Then there is the need for accessories like fitness bands to support Bluetooth 5, but that is a whole different story!
Are you looking forward to Bluetooth 5 support in Android 8.0 Oreo? Please let me know in the comments below.
Also don’t forget to check out our other articles in this series: