Skip to content

Wi-Fi signal data gathering, analysis and visualization 📡🛰️

License

Notifications You must be signed in to change notification settings

imartinezl/local-network-monitoring

Repository files navigation

local-network-monitoring

Wi-Fi signal data gathering, analysis and visualization. The main goal of this project is to check the quality signal and coverage of a local Wi-Fi router.

Built with

Wi-Fi network analysis

  • iwlist: detailed wireless information from a wireless interface
  • python-iwlist: python scanner and parser for wireless networks

Connected devices

  • nmap: open source utility for network discovery and security auditing
  • nmap python: python library which helps in using nmap port scanner

Data exploration

  • R - Programming Language / 3.6.0
  • RStudio - IDE for R / 1.2.1335
  • dplyr - A grammar of data manipulation / 0.8.1
  • ggplot2 - Create graphics with R / 3.1.1
  • jsonlite - A Robust, High Performance JSON Parser and Generator for R / 1.6
  • lubridate - Library for date-times / 1.7.4

Deployment

The python script wifi_analysis2.py was executed every minute on a Raspberry Pi 3 Model B using crontab, a cron (time-based job scheduler) expression editor.

Data Visualization

Every minute, requested data was appended to a csv file. In order to visualize this information, a local server was designed using Node.js express server. This server makes a call to request the csv data and builts a plot using Plotly.js

Some additional commands to explore

sudo iwlist wlan0 scan | egrep "Cell|ESSID|Signal|Rates"

sudo nmap -sP -r 192.168.1.0/24

About

Wi-Fi signal data gathering, analysis and visualization 📡🛰️

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published