Skip to content

feat(wifi): add channel analyzer and jam detect modules#2558

Open
r13xr13 wants to merge 1 commit into
BruceDevices:mainfrom
r13xr13:fix/wifi-init-safety
Open

feat(wifi): add channel analyzer and jam detect modules#2558
r13xr13 wants to merge 1 commit into
BruceDevices:mainfrom
r13xr13:fix/wifi-init-safety

Conversation

@r13xr13

@r13xr13 r13xr13 commented Jun 18, 2026

Copy link
Copy Markdown

Summary

Two new WiFi analysis modules for real-time spectrum monitoring and deauth detection.

Changes

Channel Analyzer (src/modules/wifi/channel_analyzer.cpp/.h)

  • Real-time per-channel utilization display with solid-threshold bars
  • Scans channels 1-11 with configurable dwell time
  • Shows channel load percentage, peak, and signal meter
  • Tolerates ESP_ERR_WIFI_INIT_STATE for graceful recovery

Jam Detect (src/modules/wifi/jam_detect.cpp/.h)

  • Detects deauthentication flood attacks by monitoring deauth packet rate
  • Visual indicator when channel is under active attack
  • Threshold-based alerting with user-defensible false positive ratio
  • Same init-state tolerance as channel analyzer

Testing

  • Verified both modules initialize correctly when WiFi is already active or inactive
  • No hangs on init failure — modules degrade gracefully and retry
  • Accessible from WiFi menu

…te tolerance

Two new WiFi analysis modules: channel_analyzer (real-time per-channel utilization display) and jam_detect (deauth flood detection). Both tolerate ESP_ERR_WIFI_INIT_STATE for graceful recovery when WiFi is left in a partially configured state.

@Ninja-jr Ninja-jr left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was this tested in a real live device to see if it works as expected and doesn't get messy in small screens?

@r13xr13

r13xr13 commented Jun 26, 2026

Copy link
Copy Markdown
Author

Was this tested in a real live device to see if it works as expected and doesn't get messy in small screens?

trim.2AE4C060-FCA5-4D5E-89F7-08C6DF2077BE.MOV

@Ninja-jr

Copy link
Copy Markdown
Contributor

All good then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants