The problem
Anyone who has fought with slow Wi-Fi in a crowded apartment building has met the real problem this project addresses: dozens of access points shouting over each other on the same channels, with no visibility into which channel is actually free. Consumer devices just show signal bars; they never show that your router and four neighbors are all piled onto channel 6, or that a network claims WPA2 but is really running the broken WEP protocol. A proper Wi-Fi scanner exposes the radio facts — SSID, BSSID, RSSI in dBm, channel, band, width, security suite, vendor OUI — and aggregates them into channel utilization views that make congestion obvious. This project implements that as a real desktop application with passive scanning, live signal history, neighbor analysis and CSV export.
Starts scans, selects networks for signal tracking and exports results to CSV.
Follow the working sequence
How it works
- The app puts the wireless adapter into scan mode and issues channel-by-channel probe sweeps, collecting 802.11 beacon and probe-response frames.
- Each frame is parsed for SSID, BSSID, RSSI, channel, band, channel width, supported rates and the RSN information element describing security.
- The vendor is resolved from the BSSID's OUI prefix against a local lookup table.
- Results are aggregated per channel to build the utilization graphs, counting networks and weighting by signal strength.
- Selecting a network starts a 60-second RSSI sampler that plots signal history and refreshes the neighbor list on that channel.
- Scans can be exported to CSV with timestamps for before/after comparisons when repositioning an access point.
Tech stack:
- Python 3
- PyQt6 · Qt (desktop UI)
- Scapy (802.11 frame parsing)
- SQLite (scan history)
- OUI vendor database
- Matplotlib-style custom canvas graphs
- PyInstaller (packaging)
| Parameter | Value |
|---|---|
| Platforms | Linux (full), Windows/macOS via adapter APIs (expected) |
| Bands | 2.4 GHz (ch 1–13), 5 GHz (ch 36–165) |
| Scan mode | Passive + active probe sweeps |
| Signal range | −30 to −95 dBm typical display |
| History window | 60 s rolling RSSI plot |
| Export | CSV with full per-network detail |
| Adapter requirement | Any adapter with monitor/scan support |
| Packaging | Single-file installer per OS |
Project features
- [Passive network discovery] Scans all 2.4 GHz and 5 GHz channels for beacon frames and lists every in-range access point with SSID and BSSID.
- [Signal strength in dBm] Real RSSI values with quality grading (excellent/good/fair/poor) instead of vague bars, sortable across networks.
- [Security auditing] Identifies WPA3, WPA2, open and legacy WEP networks at a glance, flagging weak configurations worth avoiding.
- [Channel utilization graphs] Per-band bar charts show how many networks crowd each channel, making the least-congested choice obvious.
- [Signal history tracking] Select a network to watch its RSSI plotted over the last 60 seconds — useful for finding dead spots by walking around.
- [Neighbor analysis] Lists co-channel and adjacent-channel networks with their signal levels to explain interference on a chosen channel.
- [CSV export] Save any scan with full details for reports, site surveys and documentation.
What is included
- Complete desktop application source code
- Installer and adapter setup guide
- Site-survey walkthrough document (how to read the graphs)
- Project report PDF (802.11 scanning, dBm math, channel overlap, security suites)
- PPT presentation for final review
- Viva Q&A preparation document (beacon frames, RSSI vs bars, WPA2 vs WPA3, channel bonding)
Limitations & prerequisites
- The app is strictly passive — it never deauthenticates, cracks or connects to networks it does not own; it is a survey tool, not a penetration tool.
- Hidden SSIDs are shown as reported by probe responses; the app does not attempt to force their disclosure.
- 6 GHz (Wi-Fi 6E) needs a 6E-capable adapter and is supported only where the OS exposes the band.
- RSSI values vary between adapter chipsets — use them comparatively on one machine, not as absolute lab figures.
- Windows and macOS restrict raw monitor mode, so some advanced views are richest on Linux.
- Signal history is a 60-second rolling window, not a long-term logger.
Frequently Asked Questions
Is this a hacking tool?
No. It only reads the beacon frames that access points broadcast publicly every ~100 ms — the same information your phone uses to draw its Wi-Fi list. It cannot crack passwords or disrupt networks.
How do I use it to fix slow Wi-Fi?
Open the channel utilization graph, find the least-crowded channel on your band, and move your own router there — the report walks through this as a worked site-survey example.
What does −70 dBm mean?
dBm measures received power on a logarithmic scale; closer to zero is stronger. Roughly: −50 is excellent, −60 good, −70 fair, −80 weak, below −85 barely usable. The app grades these automatically.
Why do channels matter so much on 2.4 GHz?
Each 2.4 GHz channel is 20–22 MHz wide but spaced only 5 MHz apart, so only channels 1, 6 and 11 avoid overlapping — the graph makes this overlap visible.
Can it detect rogue or fake access points?
It surfaces anomalies worth investigating — duplicate SSIDs on unexpected BSSIDs, open twins of secured networks — and exports the evidence to CSV.
Is this project suitable for a final-year project?
Yes — for Computer Science and IT programs. It teaches 802.11 fundamentals, frame parsing, signal analysis and responsible, legal wireless surveying. Suitable for B.E./B.Tech final-year projects in Computer Science and IT.
Components & software requirements
- Python 3
- PyQt6 · Qt (desktop UI)
- Scapy (802.11 frame parsing)
- SQLite (scan history)
- OUI vendor database
- Matplotlib-style custom canvas graphs
- PyInstaller (packaging)
Delivery information
Built-to-order project. Delivery timeline is shared after order confirmation based on current queue.
Support terms
Complete documentation, setup guide, and viva preparation included. Support for setup and explanation provided.
Download free synopsis (PDF)
Enter your name and WhatsApp number — the synopsis PDF downloads immediately. We may send occasional project updates on WhatsApp; no spam.