One of the issues with using Bluetooth beacons is that it’s not easy to predict how long batteries are going to last. Battery life depends not just on the battery capacity but also the transmitted power, advertising interval, beacon processor chip type and whether the beacon has timed transmission. Also, beacons vary from model to model, sometimes even between revisions of the same model. In some scenarios it’s essential to know which beacon models are the most power efficient and how long batteries will last.
Over the years we have spent a considerable amount of time investigating actual battery use. It’s not as simple as you might think. You can’t use an ammeter because it can’t see the short pulses in peak power. The majority of the power is expended in very short, few millisecond (ms) transmit pulses, in between which the beacon goes into low power sleep.
Nordic Bluetooth Advertising Power Use
Testing needs to integrate the current used over multiple advertising periods. The test equipment needs to capture this data at sub 1ms precision in order to catch the pulses. The testing also needs to be flexible enough to work for advertising periods from 100ms to 10 sec.
We have custom in-house designed test equipment capable of real-time battery current testing. This enables us to compare different manufacturers’ beacons having the same configured settings and provide our consultancy clients with beacon battery use data based on their exact configuration settings.
As an example, an interesting test we did was was to compare the Sensoro AA transmitting just iBeacon vs iBeacon at the same time as the 3x Eddystone advertising packets. With only ibeacon @ 760ms, 0dBm advertising, 4 typical alkaline batteries would last 7.7 years. Transmitting all 4 iBeacon and Eddystone frames reduces the battery life to 2.9 years.
Another interesting observation has been that the beacons that have the strongest signals aren’t necessarily the ones using the most battery power. Design of aspects, such as the antenna, contribute to power efficiency.
Beacons are small computers that run software, more specifically firmware. Beacon manufacturers write the firmware that uses Bluetooth software libraries to send out iBeacon, Eddystone and/or sensor data advertising.
When a beacon supports over-the-air (OTA) update, it allows that firmware to be updated without physically connecting to the beacon with wires. A smartphone app, such as the manufacturers’ app or the generic Nordic nRF Toolbox is used to connect to the beacon via Bluetooth and update the firmware.
In practice, manufacturers never update their firmware so whether a beacon supports OTA update or not isn’t usually an issue. An exception is Sensoro beacons, when the user wants to switch between standard Sensoro firmware and Eddystone Standard GATT firmware.
A further use of OTA is the facilitation of custom firmware when the standard firmware needs to be updated to provide for specially required functionality. This is non-trivial and ideally needs to be performed by the original manufacturer because they have the original source code. We have arranged this for a few customers but it tends to only be financially viable for large orders.
It’s also possible to completely replace the software in some beacons, something we provide via custom solutions and used in our social distancing and mesh solutions. In these cases, OTA tends to be too slow so wired programming jigs are sometimes used instead.
We get many questions regarding setting the distance a beacon can transmit. This might be to save battery power or to limit the distance at which a beacon can be detected.
Despite some 3rd party platforms and SDKs having settings to set distance, having such a setting is misleading. You can’t set the distance. You can set the transmitted power that affects the transmitted distance. However, as it’s radio and is susceptible to reflections and interference, there’s no way that a particular power can accuratelycorrespond to a particular distance.
If you are detecting beacons in an app you can also use the Received Signal Strength Indicator (RSSI) to filter only those within a particular range. However, again, there’s no way to accurately map RSSI to the actual distance.
Some people ask if it’s possible to set the distance to the order of centimetres rather than metres, much like NFC. This usually isn’t possible as most beacons still transmit of the order of a metre when set to the minimum power. However, an exception to this is the Sensoro range that have two antennas that provide for what they call micro location. Their app allows you to choose between 12 power levels, the lowest of which indicates a 5cm range. However, as mentioned above, as it’s radio, such things can’t be determined accurately and our tests reported a 10cm range.
Instead if framing the questions as to whether the transmitter can be set to a minimum distance, instead consider setting the receiver to ignore longer range detections. It’s possible to use the RSSI value at the receiving app or other Bluetooth scanning device to filter out beacons that are far away. More specifically, you can ignore detections that have an RSSI less than a specific value. This can be used to only process detections of the order of centimetres.
We often get asked what’s the best iBeacon? Unfortunately, there is no one best beacon for all scenarios. It depends on your particular project and business requirements. Having said this we have some favourites based on specific characteristics:
Best for Price: FSC-BP103 – Inexpensive beacon that transmits up to 10 channels simultaneously:
Best for Features:M52-SA Plus – Large easy replaceable battery, long range, temperature, humidity, accelerometer:
Best for Battery Life:SmartBeacon-AA Pro – Allows use of 4x AA batteries. Use lithium AA batteries for 7+ year battery life (also depends on settings).
Best for Setup App:Minew range – Minew’s latest BeaconPlus range (those supporting both iBeacon and Eddystone) provides the best in class app.
The paper considers the use of beacons to track hospital assets and provide for location-based access to patient records. The tracking of hospital assets is an important usecase because staff spend:
“1 hour per shift searching for equipment and the average hospital owns 35,000 inventory SKUs and utilization hovers around 32-48%, with nearly $4,000 of equipment per bed, lost or stolen each year”
The second use, the reading of patient records based on location, is particularly security sensitive. The paper describes an implementation of what they call Beacon+ that builds on iBeacon advertising to make location sensing more secure.
The Beacon+ system uses “monotonically increasing sequence number and message authentication code (MAC)”. This is similar to the (optional) changing id provided by our Sensoro beacons. The concept is also similar to Eddystone-EID that was announced at about the same time this research was ongoing.
The paper discusses using the Translated Midpoint Method rather than trilateration as a method of determining location based on readings of RSSI of multiple beacons. The accuracy turned out to be 1-2 meters in the best case and 9-10 meters in the worst case that produced a better result than trilateration in their specific experimental situation.
As with this and other security sensitive scenarios, the use of changing UUIDs needs Internet access to reconcile ids. Hospital is a suitable case as it can be arranged to have reliable (WiFi) Internet access available. However, in many other scenarios, such as visitor spaces, particularly indoors or when the user is roaming internationally, Internet access isn’t always available. Also, depending on the quality of the Internet connection, a round trip to the server can slow detection response considerably and affect perceived reliability. Hence, secure rolling UUID schemes should only be used as and when security dictates and not as a matter of course.
The paper also mentions:
“There exists an implicit assumption that devices that can verify Beacon+ advertisements are also trusted”
Not all devices can be trusted. Android and iOS devices can easily be rooted/jailbroken and/or be compromised via malware. Hence, secure rolling beacons are only a part of defining a secure solution. As with other secure scenarios such as banking, apps have to make an self-assessment whether they are running on a compromised device.
A unique feature of Sensoro beacons is that they have a patented dual antenna. Usually beacons only have one antenna and it’s difficult if not impossible to fine tune the beacon to a very short range. Minimum ranges tend to be of the order of metres.
Sensoro’s dual antenna provides what they call ‘micro location’ and together with the larger number of (12) power levels, provides short ranges down to 5cm to 15cm. This allows for very short range scenarios such as payment, loyalty redemption and ‘check in’ type security applications.
Sensoro have very recently changed the way they enable Standard Eddystone. First, an explanation of Standard Eddystone. This is when a beacon supports Google’s Eddystone Configuration GATT Service. Our previous comments, from the time this service was announced, provide more background information. Instead of Standard Eddystone, most beacons, including Sensoro beacons, have their own custom Bluetooth GATT service that can still support Eddystone (URL, TLM and EID).
The Sensoro configuration app used to have an option to convert the beacon to Standard Eddystone. This was a one way process that caused the beacon to no longer able to be managed by the Sensoro configuration app, disabled iBeacon support and Sensoro’s cloud features. Unfortunately, some of our customers didn’t realise they could use Eddystone with the Sensoro GATT service, saw ‘Switch to Eddystone’ and did the change with a loss of many features. We fed this back to Sensoro and they have listened. They have removed the switch in the configuration app. It’s now performed with a separate app and you can also now switch back to the Sensoro GATT service. The Android version of the Switcher app had a few critical bugs that we have also now resolved with Sensoro.
We posted something on Twitter last week about beacon networks and how one beacon can have multiple apps from multiple companies. Jan Steffl tweeted:
One person’s beacon hijacking is another’s sharing. Some beacon manufacturers, for example Sensoro that we stock, provide (optional) hijacking prevention and use this as a unique selling proposition. In contrast to this, Google’s presentations at Google I/O encouraged the sharing of beacons to enable new senarios and possibilities.
However, if you have gone to the expense of rolling out beacons you might not want others piggybacking on them or a competitor also showing notifications in the same places.
It remains to be seen if ‘private’ or ‘public’ beacon networks will predominate.