wavemon is an ncurses-based monitoring application for wireless network devices
Clone or download
Latest commit 4c2142f Oct 27, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
config Bring auxiliary scripts up to date Mar 31, 2009
AUTHORS Finalise Release 0.6 Apr 1, 2009
COPYING Bring auxiliary scripts up to date Mar 31, 2009
ChangeLog update link Jan 1, 2016
INSTALL Finalise Release 0.6 Apr 1, 2009
Makefile.in sort input files May 23, 2017
NEWS New release 0.7.6 Jan 18, 2014
README.md resolves #22 (thanks to @bmegli) Oct 8, 2016
THANKS New release 0.7.6 Jan 18, 2014
about_scr.c About screen: remove timezone May 2, 2018
aclocal.m4 Build: add check for libnl3 Jul 13, 2015
conf.c Remove library version information Dec 14, 2016
conf_scr.c Check available wireless interfaces first, before all other initializ… Dec 4, 2015
configure build: allow configure --without-libcap Aug 5, 2018
configure.ac build: allow configure --without-libcap Aug 5, 2018
error.c Better termination Feb 27, 2011
help_scr.c Reorganize screen handling Jan 30, 2011
ieee80211.h Scan screen: decode typical station mode usage Dec 27, 2015
info_scr.c Info screen: disable locale (#50) Sep 3, 2018
iw_if.c Scan screen: restore interface state on exit Mar 31, 2018
iw_if.h Scan screen: restore interface state on exit Mar 31, 2018
iw_nl80211.c Lower case for bits Jun 24, 2017
iw_nl80211.h Scan screen: add error handling Dec 26, 2015
iw_scan.c whitespace fixes Oct 27, 2018
lhist_scr.c Info screen: prefer station signal over average station signal Apr 21, 2018
llist.c Remove useless allocation (found with valgrind). Jan 13, 2014
llist.h Remove unused function Jun 5, 2012
nl80211.h update nl80211.h (from iw) Apr 21, 2018
scan_scr.c Scan screen: further simplify mutex use (#42) Jan 27, 2018
ui.c Fix compiler error Nov 7, 2015
utils.c Scan screen: clean up fields that were not decoded yet Jan 1, 2016
wavemon.1 resolves #23 Oct 22, 2016
wavemon.c Info screen: disable locale (#50) Sep 3, 2018
wavemon.h Info screen: disable locale (#50) Sep 3, 2018
wavemonrc.5 Update manpages Jan 1, 2016


wavemon screenshot


wavemon is a wireless device monitoring application that allows you to watch signal and noise levels, packet statistics, device configuration and network parameters of your wireless network hardware. It should work (though with varying features) with all devices supported by the Linux kernel.

See the man page for an in-depth description of operation and configuration.

Where to obtain

Apart from debian/ubuntu packages (apt-cache search wavemon) and slackbuild scripts for wavemon, this repository contains the full source code.

Please check this page for updates and for further information.

wavemon is distributed under the GPLv3, refer to the file COPYING.


wavemon requires a Linux Kernel with wireless extensions enabled. If your Kernel setup uses CONFIG_CFG80211, make sure that the config option CONFIG_CFG80211_WEXT is set.

In addition, minimally the following are required:

  • Netlink libnl at least version 3.2,
  • including the Generic Netlink support (libnl-genl),
  • ncurses development files (libncurses5-dev),
  • the pkg-config package.

On Debian/Ubuntu, this can be done using

	apt-get -y install pkg-config libncurses5-dev libnl-3-dev libnl-genl-3-dev

How to build

wavemon uses autoconf, so that in most cases you can simply run

	sudo make install

to build and install the package. Type 'make uninstall' if not happy. Refer to the file INSTALL for generic installation instructions.

To grant users access to restricted networking operations (scan operations), use additionally

	sudo make install-suid-root

If you have changed some of the autoconf files or use a git version, run


(This requires a recent installation of autotools.)


Send bug reports, comments, and suggestions by opening an issue on github.