Monitor channel usage of neighboring routers / access points and get a desktop alert if your active channel is not optimal (has more than 1 user on it, other than you). Troubleshoot your wifi without lifting a finger!
Additional options:
- Suggest a better, less congested channel
- MAC address/BSSID lookups of neighbors - Useful when troubleshooting rogue access points or evil twin attacks
- MAC address caching - No need to pull lookups from the internet when most neighboring routers are likely static
- Enterprise access point lookup - Useful when you have several access points with the same SSID; reference a list of BSSIDs and easily set custom identifiers (see 'Full Detail' screenshot)
This script can be cloned and run manually, or added as a service that runs on a scheduled interval.
See detailed install instructions for built-in systemd user service options (no sudo/root needed).
-
After installing dependencies (most Gnome users may already have them), clone the repo to a directory on your hard drive.
git clone https://github.com/angela-d/wifi-channel-watcher.git
That's it.
You can manually run the script any time via command-line:
/your/directory/path/to/wifi-channel-watcher/channel-watch
If you previously cloned this repo (prior to the version(s) mentioned, you'll have to add the new config variables to ~/.config/wifi-channel-watcher/config.conf
in order for your existing config to be read by the script.
You can also simply delete the folder: ~/.config/wifi-channel-watcher
and re-run the script to re-initialize setup (wipe existing config) to take effect, also.
Prior to v1.3.0
- Add the following to your
~/.config/wifi-channel-watcher/config.conf
file:These options move the channel selections from being hardcoded, to give the user greater control over what channels are considered or ignored.CHANNELS_5G="36|40|44|48|149|153|157" IGNORE_5G="1|2|3|4|5|6|7|8|9|10|11|12|13|52|56|60|64|100|104|108|112|116|120|124|128|132|136|140|38|46|54|62|102|110|118|126|134|134|142|151|159|42|58|106|122|138|155|161|165" CHANNELS_2G="1|6|11" IGNORE_2G="2|3|4|5|7|8|9|10|12|13|14|16|36|40|44|48|149|153|157|161|165|52|56|60|64|100|104|108|112|116|120|124|128|132|136|140|38|46|54|62|102|110|118|126|134|134|142|151|159|42|58|106|122|138|155"
- See the Customizing wiki for more detail and Channel suggestions wiki to find the best channel assessments for your environment.
Prior to v1.2.0
- Add the v1.3.0 changes above
- Add the new
THRESHOLD
variable to your~/.config/wifi-channel-watcher/config.conf
file:Threshold is the greater than or equal to value, for how many are on your channel (excluding you) before you get a notification.THRESHOLD="1"
All customizations are optional, in most cases, the script will work out of the box.
- Detailed customizing options: Customizing wiki
- Optionally install as a systemd user service Installation wiki