These are the beginnings of some truly exciting RTLS applications for Bluetooth. The future promises to bring even more exciting expansion on this principle. There is work being done to incorporate an additional measurable – time of flight – to further pinpoint device location. As our host Mahendra explained in Episode 1 of the Connectivity Corner podcast, with a combination of the angle of the device plus the time it took for the signal to arrive, you can reasonably calculate down to a few centimeters where a device is located.
Faster Operation and Better User Experience via GATT Caching
In Bluetooth Low Energy connections, many aspects of traditional Bluetooth connection have been changed to support the needs of low-power sensor devices. One of those improvements is in terms of connection speed – the nature of these devices requires them to be able to fall asleep for periods of time, then to wake, quickly connect, and send data before falling asleep again. This is facilitated by the GATT table, which is the way that Bluetooth LE devices send data back and forth.
The GATT table is populated by services and characteristics. When devices have a dedicated connection, the GATT table defines the application and facilitates the data types and the data needed to perform that application.
Importantly, in previous iterations of Bluetooth LE, it was required to perform a full service discovery every time devices connected. But in Bluetooth 5.1, it’s possible to utilize GATT table caching to make the connection, broadcast, and sleep cycle move faster, thus saving power. For those applications whose GATT services, characteristics, and descriptors do not change throughout their life, allowing caching of the GATT table saves a lot of time in this process.
One of the ways this is accomplished is by the utilization of a hash. When the client compares the hash of the database to its previous hash, it can determine whether the GATT table is exactly as it was on last connection. A matching hash allows the client to skip the entire read process. This also has implications for a client interacting with a large number of devices which are all similar in nature. In this way, when the client encounters a new device it has never seen before, it can also use that hash to determine if it can proceed as it did with the last device. This means every subsequent connection is significantly faster than the first one.
Random Advertising Channels – Eliminating a Worst-Case Advertising Scenario
When Bluetooth LE was introduced, one of the mechanisms that enabled devices to find and discover connectable services was the creation of advertising channels. Advertising devices used those channels (37, 38, and 39) in a regular pattern to broadcast availability to other devices to initiate a connection. However, due to the regular nature of that pattern, an unlikely worst-case scenario developed: what happens when multiple devices wake and start broadcasting at the same time?
The result of this condition is overlapping broadcast channels, which would result in both devices being unable to find each other, since they would talk over each other when advertising their connectability. In Bluetooth 5.1, devices are now able to select channels at random to advertise a connection.
This change has a minimal impact on environments with few devices (the home, for example) but can be hugely impactful in environments with lots and lots of devices. In a warehouse with Bluetooth-enabled asset trackers, the number of devices can number in the hundreds or thousands, dramatically increasing the likelihood of an advertising overlap. This randomization has a big impact on Bluetooth’s ability to scale, especially in these more challenging environments.
What’s Next – Bluetooth 5.2 Freshly Introduced
The latest and greatest from the Bluetooth SIG was introduced January of 2020 in the Bluetooth 5.2 specification, and it introduces even more exciting new features that will dramatically change the future of Bluetooth.
One of the more exciting developments in 5.2 is the addition of LE Audio, which upends the traditional understanding of what Bluetooth LE is meant for. Previously, audio was only able to be sent over Bluetooth Classic, since Bluetooth LE didn’t offer the bandwidth to support a continuous audio stream. Now, audio is able to be sent over Bluetooth LE, and more importantly, the left and right stereo channel can be sent to each receiver at the same time. Previously, both streams were sent to one receiver, which then retransmitted the second stream to the second receiver.
Bluetooth LE Audio will also allow for one audio stream to be picked up by multiple receiving devices. This feature allows a crowd to all tune in to an ongoing Bluetooth stream. It’s also the basis behind Bluetooth audio sharing, which will allow users to share their audio connection with a friend for fully synchronized listening.
There are other improvements and feature changes inherent in the Bluetooth 5.2 specification, and certainly more to come. But one thing is clear: Bluetooth will used in exciting new ways that are currently impossible.