August 29, 2019
Interested in indoor positioning? Here’s a primer on RSSI, AoA, and AoD to get you started with Zigbee- and Bluetooth Low Energy-enabled devices.
Imagine looking for a specific item in a vast warehouse. Or imagine that you’re lost inside that warehouse and need to find your way to a specific exit. With the right devices, both scenarios have a solution. Positioning technology is making it easier than ever to pinpoint locations and navigate through indoor spaces.
For instance, many people are familiar with using a global positioning system (GPS) to pinpoint location in outdoor environments. This method — which relies on satellites — is an established standard for outdoor positioning, but does not work well in indoor environments in which there are physical objects that obstruct satellite signals.
By contrast, an indoor positioning system is ideal for locating objects or people inside a building. An indoor positioning system can use any number of mechanisms to achieve its objective, from lights to acoustic signals. With IoT devices, however, a select few approaches — received signal strength indicator (RSSI), angle of arrival (AoA), and angle of departure (AoD) foremost among them — can be counted on to deliver highly effective indoor positioning.
Indoor positioning technologies have many powerful real-world use cases, including everything from accessibility aids and museum tours to warehouse management and transportation. To facilitate such applications, wireless positioning systems need to be inexpensive, scalable, low-power, fast, and reasonably accurate.
The RSSI approach measures the amount of power in a radio signal, providing an approximate value for the signal strength received by an antenna. In short, this provides a measurement of the quality of a connection.
If a transmitter and receiver are located closer together, the strength of the signal tends to be stronger. A higher RSSI measurement denotes a stronger signal — in other words, -20 dBm represents a stronger signal than -30 dBm — though RSSI is actually a relative measurement, meaning different manufacturers have their own standards for RSSI range values.
While this is one of the cheapest and easiest methods for localization, it leaves something to be desired when it comes to accuracy. To determine position, a client device sends a signal to several access points, and the combined data can provide localization with an accuracy of about 2 to 4 meters in normal conditions, or 1.5 meters in ideal conditions.
At the technical level, RSSI is relatively uncomplicated, as it simply measures the indication of RF energy at an antenna. Unfortunately, RF interference can cause a radio frequency signal to read higher than what is actually being transmitted from a device, meaning in a “noisy” RF environment, you might get a high RSSI reading even in the absence of a strong communication link.
Wireless tech built on the Zigbee protocol is particularly effective for middle-distance indoor positioning. Measuring RSSI values on Zigbee is fairly straightforward, as integrated chips are designed to get RSSI, and the IEEE 802.15.4 standard Link Quality Indication can be used to derive a received signal strength value. That said, while easy to implement, Zigbee RSSI values can fluctuate depending on the surrounding environment — objects like furniture, walls, and even human bodies may change the values in unpredictable ways.
Another standard, Bluetooth Low Energy (BLE), is designed primarily for functionality by proximity. While RSSI can be used for a proximity application, Bluetooth recommends using the trendline of radio signal readings rather than an absolute value. When you use the mode (the most frequent value) of RSSI readings, you can filter out environmental noise that may be skewing the data.
Currently, Bluetooth location services use RSSI to estimate the distance between devices, and can determine device position with trilateration, a version of triangulation that measures signal distance from at least three points in order to pinpoint one specific location (unlike triangulation, trilateration does not use angles in its calculations). When used with AoA for triangulation (explained below), the BLE directionality function is even more accurate.
AoA is a localization method that uses the arrival angle of a signal received from a known location to determine the location of another user or device. For AoD, the concept is similar, but device roles are reversed. This method involves two or more beacons that transmit coordinates to a device so that the device can calculate relative angle and position.
AoA and AoD are appropriate for a real-time location system or simple proximity functionality. Typically, these methods can achieve accuracy within 1-2 angular degrees — translating to location accuracies of about half a meter — although this depends on array implementation. These methods tend to be more accurate than most, but requires more specialized hardware.
With AoA specifically, a transmitter device uses a single antenna to send a direction-finding signal to a receiver equipped with multiple antennae. (For AoD, the tracked device has one antenna, and the beaconing devices have multiple antennae.) Since each is positioned at a different distance from the transmitter’s antenna, these antennae can pick up on signal phase differences. The difference in these signals is called the time difference of arrival, and the readings the receiver takes of the signal are called IQ samples. These samples allow the receiver to calculate a relative signal direction.
In short, AoA uses triangulation with known anchor transmitters to find the location of the additional antenna. With AoD, the receiving device calculates its own position in space. But users beware: multi-path signals, or reflections from walls or other obstacles, can interfere with the accuracy of these measurements.
Zigbee deployments typically use a single directional antenna, which can make it trickier to utilize AoA with these devices than to utilize MSSI with them. Additionally, Zigbee uses a parent/child configuration that can prevent the kind of inter-device communication involved in AoA. That said, AoA can usually be achieved with Zigbee-enabled devices by grouping three or four nodes into an array that acts as a single anchor node.
AoA and AoD for Bluetooth is an emerging standardized framework designed for better indoor positioning and asset tracking. With Bluetooth Core Specification version 5.1, Bluetooth devices can determine the directionality of signals from other BLE devices. As is the case with Zigbee, it’s possible to use Bluetooth for localization with an antenna array and either RF switches or a multi-channel ADC. However, doing so effectively requires designing a functional antenna array that includes an accurate angle estimation algorithm.
Despite the promise of these technologies, installing indoor positioning arrays does give rise to a number of challenges. Even if indoor spaces are smaller than many outdoor spaces, that isn’t necessarily an advantage. The scale of such a space seems to call for greater accuracy, but it’s actually more difficult to be precise in this setting. Indoor spaces are full of barriers, and signals may be distorted by or fail to penetrate the many floors, walls, and large objects in these spaces. Additionally, the density and activity of many indoor environments result in a great number of signals overall, leading to multipath interference.
These challenges notwithstanding, through strategic implementations of AoA/AoD and/or MSSI, both Zigbee- and Bluetooth Low Energy-enabled devices are becoming major players in a variety of real-time location services deployments.