With the first Bluetooth 5 devices just released (first and foremost the Samsung Galaxy S8), Bluetooth Beacons like Apple iBeacon and Eddystone by Google gain a lot of potential. Increased range means future beacons will cover a much larger area, without increased power consumption. With the payload increase of beacon advertisement frames from 31 bytes to 255 bytes, the amount of information transmitted by beacons can substantially increase.
In my session about Bluetooth Beacons at the Mobile Developer After-Work #14: Creating Immersive Environments, I provided a short update about the latest news. Unfortunately, recording of the live session at the event failed. Therefore, I’ve re-recorded it – you will miss the live experience, but I did have a little more time for more detailed explanations of some important facts, so it’s well worth watching again even if you have been at the #mdaw14 Event!
The 45 min recording is now available on YouTube.
Bluetooth 5 & Parsing Bluetooth Data with an Arduino Board
The session includes an overview of how beacons work, what’s new with Bluetooth 5 and how the two most important beacon specifications – Apple iBeacon and the open Eddystone beacon specification by Google – work.
In a practical example, I demonstrate how to actually capture and parse the low-level beacon information, as received by an Arduino / Genuino 101 board using the Intel Curie Bluetooth LE chipset. While the example provided in the Arduino IDE already recognizes the Service UUID of the Eddystone frames (0xFEAA), it does not print the data sent by iBeacons. I extend the example to read the manufacturer specific data of Bluetooth Advertisements. I’ve already blogged about the instructions.
News for Bluetooth in the Windows 10 Creators Update
Next, I explain a few details about the enhancements of Bluetooth technology in the new Windows 10 Creators Update. Finally getting on par with Android and iOS, also Windows can now support different roles (GATT Server / GATT Peripheral). That allows to build embedded Bluetooth LE devices like sensors with Windows 10. It also enables Windows to work in a smarter way with wearables, so that Windows can now finally push notifications to a smart watch.
To easily develop Bluetooth Beacon apps for Windows 10, I also showed a quick example using the Universal Beacon Library that I’ve developed. It’s available under an open source license. The library can be easily integrated into your apps through NuGet packages or directly by cloning the source code from GitHub.
The library supports parsing Bluetooth beacon data, including Eddystone – saving you from the work of reading the low level specs and parsing the bits and bytes sent by in the frames in order to recognize the actual payload data. The Bluetooth Beacon Interactor example app is also available for Windows 10, Mobile as well as for HoloLens.