About the Project

Description

Raspberry Pi listening for WiFi probe requests from nearby devices. The MAC address is retrieved from each packet and stored along with signal strength. These headers are collected and sent to a server over HTTP every 5 seconds.

View Demo Checkout Source

Overview

  • Track and monitor nearby activity
  • Passively listening for WiFi packets from nearby devices
  • Devices send probe requests when WiFi is enabled
  • Listen for probe requests and store timstamp and MAC to track device across visits
  • Store headers in database and aggregate in 5 min, hour, day and week intervals
  • Display visualization showing active devices and summary of recent activity

Stack

  • Raspberry Pi 2 Model B Sensor
  • Atheros AR9271 USB WiFi chipset
  • Python daemon running on Pi using tshark and aircrack-ng with pysharkwrapper
  • Web-services written in Go to accept requests from Raspberry Pi and web-clients
  • PostgreSQL datastore
  • D3 Visualizations