Avoid the libraries produced by the beacon manufacturers. They tend to add little value, are usually poorly documented and aren’t changed when there are updates to underlying Android libraries. You can achieve everything with the Android APIs. The only exception is connecting via GATT to Sensoro beacons where the Service/Characteristic information isn’t publicly available and hence you have to use their SDK.
We are starting to see the first beacons and gateways that truly support Bluetooth 5 even though the standard was released in 2016. Up to recently, some have claimed to support Bluetooth 5 in that the internal hardware and software (SDK) was Bluetooth 5 capable but most, if not all, of the Bluetooth 5 features weren’t available.
Compatibility is dependent on smartphones supporting Bluetooth 5 that has also only come to fruition with recent phone models. Most Android smartphones manufactured in the last few years use Android 10 or Android 11 that has Bluetooth 5 software support. However, the Bluetooth chip inside the smartphone also needs to support Bluetooth 5. On iOS, all including and after iPhone 8/8 Plus/iPhone X support Bluetooth 5.
Furthermore, there’s also the complication that Smartphones claim to be Bluetooth 5 capable but might not support many of the optional features. One way to test which features are supported is to use the Nordic Semiconductor nRF Connect app. Here’s an example from the ‘Device Information’ section of the app running on a Pixel 3a XL:
There’s recent research into using Bluetooth beacons to measure human gait speed. The ability to walk can be used as a core indicator of health in aging and disease. For example, it can enable early detection of cognitive diseases such as dementia or Alzheimer’s disease.
Flutter is a UI software development platform created by Google used to develop cross platform applications for Android and iOS.
There’s a recent plugin flutter_beacon that scans for beacons and can also act as a transmitter. It supports Android API 18+ and iOS 8+. Features include permission management, iBeacon ranging, iBeacon monitoring and transmitting as iBeacon. This plugin is open source on Github.
When inserting or replacing coin cell batteries it’s necessary to know which way round to place the battery. This is especially so for some of our beacons where the battery is separate or not included.
The following image shows the orientation of the battery. The -ve ‘button’ side of the battery fits against the printed circuit board. The side that faces away from the beacon circuit board is +ve. This is common to just about all beacons. Note that this is different to commonly used batteries, such as AA batteries, where the ‘button’ end is +ve.
Here’s another example showing a commonly used metal battery holder:
If you put the battery in the other way around then you might damage the beacon or, more likely, short circuit the battery as most battery holders are metal wrap around types.
Nordic Semiconductor, the manufacturer of the System on a Chip (SoC) used in many beacons, has published the latest online issue of Wireless Quarter Magazine. It showcases the many uses of Nordic SoCs.
The pandemic has increased the use of Nordic Semiconductor chips in health oriented devices such as the Warmie continuous infection monitoring device, the AppSens 7 Smart Heart Sensor and the Ellume COVID-19 home testing kit.
Asset tracking market will double from $17 billion in 2020 to $34 billion by 2026
Research&Markets quote in Wireless Quarter Magazine
Tracking highlights include:
Tracking elephants with collars
IOSEA’s proprietary AoA/AoD direction finding platform
How asset trackers are moving beyond location monitoring to sensing
While the accuracy of finding is better for the relatively few Apple iPhones that have the Ultra Wideband (UWB) U1 chip, this isn’t likely to be the main advantage and will in any case be lost on most potential buyers. Similarly, Apple’s claim that it’s private and secure is unlikely to be important or seem significant in most scenarios.
Instead, the power of the AirTag will not come from the technical aspects of the physical AirTag but from being part of the Apple ecosystem. The problem with Tile and other trackers is that the range is only local, typically about 50m. When tags are lost away from the vicinity the system relies on other users to detect your tag. This previously hasn’t worked because there haven’t been enough users. The power of the AirTag will be the reach of the Apple device network that no other tag manufacturer will be able to match.
This isn’t to say AirTags will replace iBeacon and Eddystone beacons. AirTags are only for tracking and are more for finding personal things rather than say assets in a warehouse or factory. AirTags only identify and don’t sense like sensor beacons. While they can be seen by Bluetooth gateways, the privacy and security features will thwart identification and use in real time locating systems. AirTags are only a very small, proprietary and closed part of the tracking and sensing ecosystem.
Some manufacturers offer SDKs to allow programmatic access to their beacons from iOS and Android.
Most SDKs tend to be poorly implemented/documented, tie your code into using that particular beacon and rarely get updated to use newer mobile platform APIs. They also tend to be thin abstractions over the Android and iOS Bluetooth APIs.
If you rely on a beacon manufacturer that doesn’t update their SDK, it’s eventually the case that the underlying Android and/or iOS API changes such that your solution becomes non-optimal and, in the worse case, breaks.
Instead, when you can, we recommend you use the iOS and Android Bluetooth APIs directly to make your code independent of the beacon type. In this way you don’t end up depending on intermediate code and this has the benefit that you can more easily change beacon providers.
However, there are some cases where you must use the manufacturer library. This is usually in cases where there the app needs to connect with the beacon (as opposed to only view advertising scans) to perform beacon specific things. The Sensoro SDK is an example where their private protocol (to prevent squatters) and sensor information can only be obtained via their SDK.