No more hide-and-seek? Impressions of the Quuppa-Indoor-Location System
Indoor navigation is still an undecided game. Outside of buildings GPS, Glonass and Galileo are the big players, all of them based roughly on the same principle: Measuring the time the signal needs from sender to receiver. But as soon as we enter a building and get out of reach of the satellites’ signals, things become surprisingly complicated. There are many solutions that provide indoor location estimation with different technical approaches. We evaluated and installed the indoor positioning system “Quuppa”. Here’s a summary of our experiences.
Quuppa is developed by the Finland-based company “Quuppa Oy”. It is an Angle-of-Arrival based system that uses Bluetooth Low Energy advertising signals. It locates several kinds of “Beacons” as well as standard mobile devices with BLE 4.0 support. Depending on the locator density, Quuppa provides 2D or 3D indoor positioning. They claim to reach an average position accuracy of 0.5m, under special circumstances even better. Fig. 1 Estimated position error dependent from number of locators and distance
There is a nice Demo Video of Quuppa at an icehockey match. It is quiet impressive at the first glance. But keep in mind that it is very hard to compare the Quuppa view with the realworld movements of the players on the field. Better have a look at the players waiting at the border of the field. They are hardly moving in reality but are pretty nervous in the Quuppa view. Take into account that the dimensions of the field is 60x30m to have an idea of the position error.
Quuppa is a solid indoor positioning system which gives quiet accurate results under good conditions. It needs some experience during installation but provides reliable results in a range between 0.2 - 1m, depending on the conditions. Under good circumstances, this is close to the 0.5m claimed by Quuppa on their website. The closer to the locator, the better the results. For the current project, the requirement was mainly to detect the presence of a samrtphone in predefined zones of sizes ranging from 1sqm to >50sqm. This can be easily achieved with Quuppa.
Quuppa provides a lot of data besides raw positioning data, like smoothed positions, zone data, kalman filtered positions, accuracy estimation and covariance matrices for the beacons. Smoothed positions have a noticeable delay.
- Deployment workflow is well documented
- BLE 4.0 devices can act as beacon
- Comfortable and mature software ecosystem
- Needs many locators
- Expensive hardware
- Locators are visible at the ceiling
- Ethernet connection for all locators mandatory
Experiences and measurements
We tested the accuracy with moving beacons as well as with static beacons, on different positions distributed over the covered area. The term “beacon” is used for every device that can be located by Quuppa, no matter if it is a mobile device or a propietary Quuppa beacon.
Grid distance in all drawings: 1m
A beacon with highest advertising rate (ca. 9 Hz) is moved along a marked line multiple times. The trajectory is recorded and drawn with the Quuppa Data Player.
The position accuracy is best in the middle of the area where there are no obstacles between locators and beacons. Especially at the lower end of the area, the beacon coverage is bad which results in less precision.
Fig. 2: Position error of a moving tag along an arc
Video 1: Playback with 16x speed of movement of 2 beacons along a straight line. The error in the measurement is pretty constant at certain positions.
The positions of the beacons are drawn as heatmap.
Fig. 3: Heatmap of measured tag positions when moving along a straigt line in our lab
Beacons with highest advertising rate (ca. 8 Hz) are placed at a static position for 15 minutes. Position is recorded an drawn with Quuppa Data Player.
The first beacon is placed on the imaginary between two locators. Its calculated position has a variance of ca. 1m. The variaton is much higher along the line between the locators. This shows that vertical angle measurement seems to be less precise than horizontal angle measurement.
Fig. 4: Position error of a static beacon
For the second measurement, the beacon is placed very close to the locator. The variation of position is much lower.
Fig. 5: Position error of a static beacon
The Quuppa Positioning Engine is a server component running in Apache Tomcat that does the processing of the raw data and provides positioning data through http, UDP and file-sharing. The data output format can be configured by the user (JSON, CSV) In addition to plain posititing data, polygonal zones can be defined. Additionally, it can record all data to a binary file that can be played back later with the Quuppa Data Player.
Fig. 5: Mapview of QPE
Locators are specialized antennas that measure the angle of arrival of BLE devices. They must be mounted under the ceiling, free from nearby obstacles. They are connected via ethernet and powered through PoE.
Fig. 6: Locator LD-6L
The focusing locator contains the same hardware as the locators but another software. It is used to determine the mounting angle of the locators.
Fig. 7: Focusing locator mounted on a tripod
Besides mobiles devices, several types of BLE beacons can be located as well. Quuppa provides their own beacons which can be configured in many details like advertising rate, sleep cycles, ID etc. The batteries are not replaceable, but Quuppa claims a battery lifetime of many years, dependend on the configuration.
The Quuppa Site Planner is the central planning and deployment tool. It is used for planning the distribution of the locators, for identifying the locators on location, for determining their mounting position and finally for deployment of the final project. It is a Java Swing Application which feels a little oldschool, but it runs on every operating system we tried and is stable and pretty ergonomic.
Fig. 8: Site planner with coverage estimation
Java application to play back the recorded positioning data or to show a live stream from QPE.
For deployment, a precise site plan is essential. A laser-meter is mandatory to determine or verify all important dimensions. The distribution of the locators can be planned beforehand in the site-planne. It provides an estimate of the locator range as heatmap and gives a good starting point. If there are dedicated areas where location quality is crucial, this should be considered when planning the site. We experienced that locator distances between 6 and 10 meters are convenient for a good coverage.
The most time consuming step during deployment is the mounting of the locators and the determination of their exact position and orientation. The determination of the orientation (called “focusing”) is done by aiming the focusing locator towards each locator from two or more known positions in the site-plan. After at least two measurements per locator, the site-planner gives feedback about the quality of the measurements by comparing the angle of the focusing locator based on the individual measurements. It needs some experience to find the optimal points and distances for the focusing step. This is essential for the quality of the positioning and should be done properly.