Let’s begin our story with the iBeacon – a protocol developed by Apple and introduced at the Apple Worldwide Developers Conference in 2013. Various vendors have since made iBeacon-compatible hardware transmitters.
On one hand, there have since made iBeacon-compatible hardware transmitters. On the other hand, there is Google, which on the 15th of July 2015 announced Eddystone, an open-source alternative to Apple’s iBeacon protocol. These devices are typically called beacons – a class of Bluetooth low energy (BLE – explained later in the article) devices. They come in a variety of forms produced by multiple manufacturers. You can find some of them on the image below.
Image courtesy: Aiselabs – www.aiselabs.com
Like you can see, a number of beacon types and their providers is significant, and with the time it’s probably going to grow even more.
A beacon is a small device that continuously sends out radio signals with a small amount of data. Mobile applications can listen for the broadcasted signals, and when they get it, they can trigger an action on your device. Note that beacons only broadcast the information in one direction and they don’t receive any data back from your smartphone or tablet.
For the majority of current beacons, the data that they transmit is hardcoded and doesn’t change frequently (set when configuring the beacon). All that happens next is up to the application installed on your device.
The technology works with Bluetooth and Location Services in iOS. For Android you will obviously also need Bluetooth and starting with Android 6.0, there are additional Location permissions you need to accept for your app to be able to discover beacons.
With a beacon, your device can alert applications when you approach or leave a location. Instead of using latitude and longitude to determine your location, beacon uses a Bluetooth low energy signal that is detected by your device.
iBeacon vs. Eddystone
The iBeacon profile is the first and currently the most widely-used communication protocol. Developed by Apple, it is natively supported in iOS and has deep integrations with the mobile OS. Although the iBeacon profile works on other mobile operating systems, it works best in the environment it was designed for, iPhones and iPads.
Much of how Eddystone works is the same as iBeacon, but there’s extended functionality beyond that. Beacons with support from Eddystone can transmit three different frame types, which work with both iOS and Android. A single beacon can transmit one, two or all three frame types. The three frame types are:
- URL: a URL (i.e. a website link) is transmitted to the device, eliminating the need for an installed mobile App
- UID (similar to Apple’s UUID): a 16 digit string of characters broadcasted on a regular interval which can identify the individual beacon. This UID can activate an installed mobile App
- TLM: sensor and administrative data from the beacon itself are communicated through telemetry. Currently, examples include the beacon’s battery level and its temperature
BLE/Bluetooth 4.0/Bluetooth Smart
Don’t confuse current version of Bluetooth with the first version of it – the one that required pairing and never actually worked. Bluetooth Smart was originally introduced under the name Wibree by Nokia in 2006. It was merged into the main Bluetooth standard in 2010.
The greatest advantage of BLE (Bluetooth Low Energy) marketed as Bluetooth Smart over the previous iterations of BT technology is how energy efficient it is. Thanks to that Beacons can last more than 2 years on a small battery. Mobile operating systems including iOS, Android, Windows Phone and BlackBerry, as well as macOS, Linux, Windows 8 and Windows 10, natively support Bluetooth Smart.
The Bluetooth SIG (Bluetooth Special Interest Group) predicts that by 2018 more than 90 percent of Bluetooth-enabled smartphones will support Bluetooth Smart.
The current Bluetooth version 5 has been officially unveiled by the Bluetooth SIG on June 16, 2016, during a media event in London. On the technical side, Bluetooth 5 will quadruple the range, double the speed, and provide an eight-fold increase in data broadcasting capacity of low energy Bluetooth transmissions compared to Bluetooth 4.x, which could be important for IoT applications where nodes are connected throughout a whole house.
The most common configuration options on the example of the iBeacon protocol include the following parameters:
- UUID, major, minor – beacon’s identifiers
- TX power – signal strength
- advertising interval
The signal strength can be changed according to our needs to give the desired coverage. This setting along with the advertising interval, which is the time between each signal transmitted by a device, has a significant influence on the beacon’s battery life.
Depending on the settings, firmware and of course the capacity of a battery used in the beacon, it can even work for a couple of years continuously with a small battery. There are also USB powered beacons which can work endlessly, but it’s another pair of shoes.