Skip to content
an other wifi mapping tool
Python JavaScript HTML CSS Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc Reducing size of PNG files in doc folder Dec 11, 2016
src Very minor changes in Python Dec 11, 2016
tools Very minor changes in Python Dec 11, 2016
www Very minor changes in HTML Dec 11, 2016
.bowerrc HMI: angular Apr 14, 2016
.gitignore Adding rules for temp files in .gitignore Dec 11, 2016 README: hackaday link Jul 27, 2017 RESULTS: position without GPS Oct 20, 2016
bower.json WEBUI: adding delete API Jun 4, 2016 fix #12 about esp arguments Jun 28, 2017 Very minor changes in Python Dec 11, 2016 Very minor changes to shell scripts Dec 11, 2016


Scan and map all 802.11 access point, stations probes and Bluetooth peripherals.

Initially inspired by , this projects aims to play with common radio networks: Wi-Fi and Bluetooth.

You can read an article on Hackaday.

Using tools such as iwlist, hcitool, or airmon-ng and a gpsd gps to logs data in an SQlite database, it provides a web HMI to monitor data processing and analyze already mapped data.

It was tested on recent Debian / Ubuntu and a flying Raspberry 1. Plane


An esp8266 version is available here esp8266-wifiScanMap



You can find a quick analysis of a ~6 months collect reading


sudo apt install npm
npm install -g bower
bower install
sudo apt install gpsd aircrack-ng bluez
sudo python -m
xdg-open http://localhost:8686


  • locate Wi-Fi access point and its metadata bssid, essid, signal and encryption
  • locate itself thanks to already known access points
  • if using airmon-ng (-m otpion)
    • record all probe request: bssid, essid
    • record all stations: bssid, signal, date and position
  • if hcitool is installed
    • record all bluetooth stations: bssid, name, classe, date and position
  • synchronize data to a remote server (running the same program, with -e option)

It was tested on a Raspberry Pi 1 with a Wi-Fi and a Bluetooth usb dongle.


Angular / openlayers 3

Main page

This page allow you to see your GPS and Wi-Fi computed position on a map, and all access point already mapped. Clicking on point gives you additional informations (date, bssid, encryption, manufacturer...) Main Page wifis

You may also want to display all stations which crossed your way. Each point with the same color correspond to a unique bssid.

Main Page stations

Offline page

This page allows you to see currents datas received (probes, stations, access points...) without map in order to be available withou internet connection Main Page stations

Probes page

On this page, you will see all probes request count and how many access point you know with this essid. Main Page stations

Clicking on a probe will display all mac addresses which made the request. Main Page stations

Station page

This may be on of the more interesting one: given a station bssi, its location history will be displayed on the map, with all probed networks. Main Page stations

You can’t perform that action at this time.