ham2mon multi-channel scanner on macOS

This setup allows for the automatic simultaneous capture of multiple narrowband FM signals. The ham2mon-gui enables easy archiving and playback of captured files. Primarily Iā€™m using it to listen to every 2 meter repeater within hearing distance to my home QTH of Longview, WA.

Quick Setup

  • Tested with macOS 10.14 using homebrew
  • RTLSDR Blog V3


  • brew install python@3.8 gnuradio cmake mpir rtlsdr swig
  • clone ham2mon (use ta6o/master fork until py3 support is merged into mainline)
  • clone osmosdr and build (make install - no sudo)
  • run ham2mon.py with various options
    • sudo ./ham2mon.py -a "rtl" -n 4 -f 1463E5 -r 25E5 -g 20 -s -40 -v 20 -t 30 -w -m


  • brew install nodejs yarn
  • follow setup steps for ham2mon-gui


The software is currently deployed on my main dev laptop running macOS. The ultimate goal is to deploy to a remote raspberry pi for the RF listening component and host the ham2mon-gui on a Digital Ocean VPS.

Problems to Solve

  • Audible, low frequency hum is present in WAV files decoded and written by ham2mon.
  • Audio level written to WAV files is too low and needs to be normalized
  • RTLSDR only has 2.5Mhz bandwidth and cannot capture the full 2m spectrum, which is 4Mhz
  • RTLSDR has horrible image suppression, so the detection threshold must remain relatively high to avoid capturing harmonics.



Written on September 11, 2020

Please be patient, submitting a comment may take up to 30 seconds