Indoor positioning using time of flight with respect to WiFi access points

The animation above shows floor plans of three levels of a building with six “responders” (WiFi access points advertizing IEEE 802.11mc) shown in green, and the estimates of positions computed by an Android smartphone shown in red, as it is carried upstairs and around floors. The position is recovered in 3-D and then quantized to floor level for plotting. The floor plan is only for visualization and not used in the computation of the position of the phone. As a result, the red dot may at times appear to pass through a wall or even appear outside the building.

The final position accuracy is about a meter or two (aside from the occasional outlier), while the raw distance measurements have a 10% to 90% CDF (cumulative distribution function) range of between 0.2 and 0.8 meter depending on circumstances (see Measurement Error). The “dilution of precision” (noise gain), depends on the positions of the responders, and varies throughout the volume. Optimal placement of responders is an open problem (see FTM RTT Placement), as is the best way to deal with the measurement errors.

  • WiFi Fine Time Measurement (FTM) Round Trip Time (RTT)
  • Recovering position from distance measurements
  • Where to place the responders?
  • Measurement Error
  • Some Issues, Problems and Current Limitations
  • Sample FTM RTT measurements:
    In the above screenshot, each line shows BSSID (MAC address), average dBm, distance in meter (d), standard deviation (s), and SSID. The averages and standard deviations are over 16 runs (each of which consists of 7 round trip measurements). (Note: the SSID of the first five APs include some icons from above the UNICODE basic language plane (BPL), set up in Compulab WILD APs using UTF-8 encoding). The negative distance in the first row is because of a 5.5 m offset discussed in Some Issues, Problems, and Current Limitations (that offset affects all of the first five lines above).

    Click on the following image

    for a short video of an Android phone being carried around in a seminar room. The green spots are the locations of three AP responders. For scale, the distance from the left edge to the right edge of the displayed area is 18 meter. The update rate (limited by the UI screen refresh) is two samples per second (Android takes about 30 msec per AP to do the actual ranging). The floor plan is used only for visualization and not used in the computation of the position of the phone, and no use is made of remembered state (i.e. previously computed locations are not used) or prior probability distributions.
    Berthold K.P. Horn, bkph@ai.mit.edu