Indoor positioning

In depth research

Adrian Hindle
cogapp

--

Indoor positioning technology — when it really works — will revolutionise environments such as retail and museums. Cogapp Developer Adrian Hindle had a rare opportunity to work with indoor positioning in depth within a research environment. In this piece he shares the opportunities and difficulties with indoor positioning that he encountered when developing and testing with a team in Geneva.

In my previous job in Switzerland at the University of Geneva, I worked as a software engineer for the Travelling and Mobility R&D team (TaM). I developed Android applications and helped scientists with their research. Our areas of expertise were mobile sensors and localisation, and we worked on a wide range of research topics, the main one being indoor positioning or localisation.

Different technologies — GPM

A variety of technologies have emerged in response to an increasing demand for location-aware applications. Single-technology systems have several limitations and vulnerabilities and it seems unlikely that such systems will be able to provide a universal solution. This is why the TaM team developed a Java Android framework called Global Positioning Module (GPM). This framework provides location information to mobile phone users using different providers at the same time (GPS, Wi-Fi, Bluetooth…). It switches from one to the other based on their suitability to the user’s environment and requirements such as accuracy, power consumption, location and available sensors.

Signal strengths decrease linearly with distance
Image credit: TaM

From GPM to a museum guide

The TaM group contributed to the Android indoor positioning and navigation expertise of the GAVI (Guide Audio Visuel Intelligent) project. The project was conceived as a next-generation museum guide for providing visitors with additional media content accessible on their smartphones. TaM was the main integrator of all the application components provided by various partners. We tested the application at the Geneva Botanical Gardens and the Museum of the History of Science.

TaM’s GPM positioning system and navigation module provides the application with step-by-step navigation to points of interest, whether they are services or exhibits. The use of Global Map API (GMA), also developed by TaM, lets the app display customised maps for indoor locations (across multiple floors) and outdoors. It lets visitors access all manner of other information, such as suitable routes for visitors with limited mobility.

For the GAVI project and especially for the Museum of the History of Science we decided to mainly use Wi-Fi fingerprints for the indoor part of the museum. The idea behind Wi-Fi fingerprints is to create a map of RFIDs and signal strengths. Triangulation cannot be used inside a building because the propagation of Wi-Fi is not linear (due to walls and other objects blocking access to signals).

Wi-Fi: propagation

Recorded signal strength is dramatically affected by walls at different angles
Image credit: Revel Systems

In order to create the map of Wi-Fi fingerprints, routers need to be added inside the building. The signal strength to provide an accurate measurement needs to be at least -70dBm and have at least 3 different Wi-Fi signals in each location. To achieve this a network of routers is arranged in a grid pattern throughout the building.

This results in a large number of routers, however they do not need to have Internet access, making them easier to install. Once the routers are set up and their location saved, the Wi-Fi fingerprints are created using a simple Android app. This small app allows the user to locate themselves in the building using a map, and then using as many locations as possible, save the RFID of routers and their signal strength (the saving process is automatic). It can take some time to map the whole building, but it can be done with multiple phones at the same time and the results can be merged when finished.

Wi-Fi: Fluctuating signal strength

As Wi-Fi signal strength fluctuates a lot over time, mathematical filters are used on the raw data to get more precise values. This turns the noise of the recorded signal strengths into a recognisable fingerprint that can be used to identify a location in space. Once the Wi-Fi fingerprints are created and filtered, the values are stored into a database that GPM will use. GPM allows a lot of tweaking and calibration to fine-tune the position information for a more accurate determination of location.

So to identify the position of a user inside the building, the system follows these steps:

- The phone scans for any available Wi-Fi signals in the area
- The phone applies a known set of filters to the values it gets and then compares those to the ones in the database
- GPM then can identify the user’s position with an accuracy of 3 meters.

In order to display a user’s location, of course a map is also needed. Java OpenStreetMap Editor was used to create the network of buildings so that the navigation module can work. OpenStreetMap (OSM) is a collaborative project to create a free editable map of the world. This editor can create a network of walls, paths, stairs and other custom elements to represent indoor spaces.

Image credit: OpenStreetMap

Once all these elements (image map, network map and fingerprints) are created and tuned TaM’s solution for indoor positioning is ready to be used.

This was a quick overview of the process, but as you can see the technique of creating fingerprints from Wi-Fi patterns to identify internal locations in space was very effective. To find out more, see the Travelling and Mobility R&D team page or get in touch, I’d be very happy to talk more about it.

--

--

Writer for

Senior Software Engineer at Kudelski Security (previously Developer at Cogapp)