Indoor Positioning Using Shoe-Mounted Sensors

By Subhojyoti Bose and Amit Kumar Gupta


The ZUPT algorithm consists of identifying step occurrences by detecting foot’s standstill instant. This is followed by estimating and correcting errors by making use of any non-zero velocity detected at the time epoch of step detection. This approach reduces errors in position and heading estimates at every detected step and prevents them from growing exponentially with time.

Trajectory without correction of accumulated error
Fig 5: Trajectory without correction of accumulated error (Courtesy:

Tracking Performance

Tracking performance of the foot-mounted tracking device depends upon the number of factors which could influence the way hardware and the algorithm operates. Some of the factors which could influence the tracking performance of a ZUPT-aided foot-mounted navigation device are the type of shoes, device’s mounting scheme, wearers’ personal traits, walking surface, path profile, walking speed, environmental conditions, etc. These physiological, psychological and environmental factors typically influence gait of a person and hence have a direct effect on the performance of a foot-mounted inertial navigation system.

Oblu, a commercially available PDR device is chosen for tracking performance. It has a simple data interface that outputs PDR data at every step. The device is based on the open-source OpenShoe module shown in Fig. 6.

Commercially available shoe mounted Inertial Navigation sensor, oblu
Fig 6: Commercially available shoe mounted Inertial Navigation sensor, oblu (Courtesy:

Dead reckoning is an iterative process that has to be carried out with the values of position and heading derived from the system. In other words, the device detects steps of its wearer, computes displacement and heading of each detected step with respect to the previous one and transmits it over Bluetooth interface @ ~ 1Hz to the application platform for construction of the tracked path as shown in Fig 7. The low rate PDR data (typically few tens of bytes per second) reduces computation burden on the application platform and chances of transmission losses as well.

Pedestrian Dead Reckoning (PDR) is simplified with the shoe mounted indoor positioning device oblu. The device starts transmitting location data at every step, on receiving start command from the application platform. (Courtesy:

The drawbacks of this system are that it requires initial values of position and heading and both position and heading errors grow as a function of time. This can be attributed to the integrative nature of the system. The total position error will depend on three error factors. These are initial position and heading errors depending on the mounting of oblu on the shoe, translation errors when navigating from one frame to another and heading or attitude errors both depending on the errors in the gyroscope measurements and last but not the least displacement error depending on the error of the accelerometer. Out of all these errors, the attitude errors of a gyroscope is the most critical factor. ZUPT approach reduces the error to a great extent but fails to completely eradicate them. These small errors affect the overall tracking performance of the shoe-mounted MEMS-based INS.

Here are some of the tracking performances as measured by oblu. Here, the red line is the path marked on the satellite images whereas the blue line is the actual tracked path by oblu.

Tracking performance of a shoe mounted PDR device
Fig. 8: Tracking performance of a shoe-mounted PDR device


Positioning and navigation using Smartphone are very beneficial in everyday life. Where would we be without the friendly voice of Google maps which shows us the way wherever we are? But alas it cannot help us indoors. With a shoe mounted PDR system there are possibilities to put such an affordable “indoor GPS” into practice.

Subhojyoti Bose works as Research Engineer at GT Silicon Pvt Ltd. He has worked on Sensors, Systems & Circuits R&D; Inertial Navigation, Multi-Sensor System, Embedded System, MEMS Design, Control System Design, VLSI. He has worked on a project for ISRO. He is an alumnus of IIT Kharagpur.

Amit Kumar Gupta is Founder & CEO at GT Silicon Pvt Ltd. He works on Business Development, Operations, Marketing, Product Management, Technology; International Exposure. He has worked for CeNSE, Freescale, Sarnoff etc. He is an alumnus of IIT Kanpur, IISc, IIM Bangalore.



Please enter your comment!
Please enter your name here