RTT Map Tool is a browser-based geospatial visualization and configuration
editor for Wi-Fi Round-Trip Time (IEEE 802.11mc/az FTM RTT) indoor positioning
systems. It allows researchers and engineers to align building floorplans with
geographic coordinates, place and calibrate Wi-Fi Access Points (AP), define
Ground Truth (GT) survey paths, construct OpenStreetMap (OSM) walkable route
graphs (WP), and analyze BSSID positioning accuracy.
To try out the RTT Map Tool click the link: https://google.github.io/rtt-map-tool/rtt-map-tool.html and view the operator instructions at USER_GUIDE.md.
Disclaimer: This is not an officially supported Google product. This project is not eligible for the Google Open Source Software Vulnerability Rewards Program.
- Configuration & Data Import/Export:
- Load and export positioning configuration files (
.csv) containingPARAM,BD(Building Floorplan bounds),AP(Wi-Fi Access Points), andGT(Ground Truth) records. - Import configurations and multi-tab survey datasets directly from Google Sheets URLs.
- Load and export positioning configuration files (
- Floorplan Image Alignment:
- Overlay building floorplan images (
.png,.jpg) onto OpenStreetMap, Google Maps, or Google Earth satellite layers. - Interactively drag or nudge Southwest (
SW) and Northeast (NE) floorplan corners with live aspect-ratio and opacity controls.
- Overlay building floorplan images (
- Interactive Marker & Graph Editing:
- Add, drag, delete, and fine-tune
AP,GT, andWPmarkers using directional nudge controls (10cmto10mstep sizes) or Mass Nudge across an entire layer. - Construct and export walkable navigation graphs in standard
.osmXML format (wayandnodeelements). - Full Undo/Redo stack for marker movements, additions, deletions, and corner adjustments.
- Add, drag, delete, and fine-tune
- Error Analysis & Metrics:
- Compare measured positioning estimates against Ground Truth markers matched by BSSID or sequence and inspect mean, standard deviation, median, and 67th/90th percentile error metrics.
-
Clone or download this repository.
-
Open
rtt-map-tool.htmldirectly in any modern web browser (Chrome, Edge, Firefox, Safari), or serve the directory over HTTP:python3 -m http.server 8080
Then visit
http://localhost:8080/rtt-map-tool.html.
To inline rtt-map-tool.css and all JavaScript modules under js/ into a
single portable HTML file (rtt-map-tool-out.html):
./export.sh --inline- Load Configuration:
- In the File panel, select Config and click Load (or enable
drag modeto drag-and-drop a.csvconfiguration file such asCL4-2-Config.csv). - Alternatively, select Sheet, paste a shared Google Sheets URL, and click Load.
- In the File panel, select Config and click Load (or enable
- Overlay a Floorplan:
- In the Floorplan panel, load a floorplan image (e.g.,
CL4-2.png) and adjust the opacity slider orSW/NEbounding coordinates.
- In the Floorplan panel, load a floorplan image (e.g.,
- Edit Markers & Walkable Routes:
- Use the Edit panel to toggle between
AP,GT,WP, orFP Cornersand choose an edit mode (mov,add,ins,del,nud). - Load or export
.osmwalkable route files from the File / Export panels.
- Use the Edit panel to toggle between
- Export Updates:
- Use the Export panel to download updated
.csvconfigurations or.osmroute files.
- Use the Export panel to download updated
rtt-map-tool.html— Main application UI and entry point.rtt-map-tool.css— Application stylesheet.js/— Modular JavaScript components (seejs/readme.mdfor module details).export.sh— Build utility to bundle CSS and JS into a standalone HTML file.deploy-web.sh— Helper script for versioning and deploying the standalone bundle viascp.
Please see CONTRIBUTING.md for details on how to contribute and sign the Google Contributor License Agreement (CLA).
This project is licensed under the Apache License, Version 2.0. See the LICENSE file for details.