WS6Z's hamtools

This page describes software I've been working on...

My Scanner: "cq"

Download it!

I decided that all scanners on my radios were worthless. Ok, there worth something but they could be a lot better. I wanted a scanner that would:


Screen Shot of my daily channels

Prioritized scanning was what I wished for the most. I listen to multiple repeaters, but some are less used than others, and some I care much more about. But if you have a scanner looking for any station it can find (which is what most built-in scanners do) the it'll pause for too long on the less-important but heavily channels. You can set it to lock to a channel for a short time, but then you get the nasty long pauses while it looks for other channels. Or you can set it to hang for along time on any channel it finds but then your chances of hearing that more important traffic suddenly pop-up are slim.

The solution? Priorities!

Prioritized Scanning

Lets say you have 10 channels. Channels 1-5 are critical (say ARES channels). Channel 6 is the repeater your friends talk on, but is not used "round the clock". Channel 7 is a popular (read: almost always on) repeater.

The goal is to always listen to "the most important thing". The way you do this with my cq tool is setting priorities on the channel. When it's listening to one channel with a priority of 10, it'll only search for channels with a better priority (ignoring all the more boring ones, until the priority-10 channel goes silent)

Here is an example timing plot that shows it switching between multiple channels as the more prioritized ones have traffic on them. Note that at the end of the plot I disabled the radio station (KXJZ) and it immediately went into a more heavy scanning mode, especially for the channels I defined a rapid scanning rate for. (The green bars generally indicate the current active channel and blue indicates the scanner checking the frequency for traffic)

Example Config

Here's a snip of my config file (modified for educational purposes):

default: mode=FM
default: priority=100
default: checkevery=10

# my favorite channels, prioritized

# emergency
Gold        : 160.065, priority=20, checkevery=2, hangtime=5
Green       : 154.445, priority=20, checkevery=2, hangtime=5
Blue        : 145.370, priority=20, checkevery=2, hangtime=5

# HAM
ARES1       : 146.55,  priority=60
BARK        : 146.97,  priority=50, tone=123
N6ICW       : 147.195, priority=80, tone=123, hangtime=20
2MFMCall    : 146.52,  priority=200, checkevery=20

# other 
2mSSBCall   : 146.200, mode=USB
440FMCalling: 446.000

# my local NPR station
KXJZ        : 90.9,    priority=10000

# now we can group them:
group emergency: Gold, Green, Blue
group ham: ARES1, BARK, N6ICW, 2MFMCall

group favorites: emergency, ham

group alwayson: favorites, KXJZ

With the above in place I can run:

cq -scan favorites

Which will listen to all my favorite channels, prioritized by importance. If I always want to hear at least *something*, you can always fall back to including the FM radio station too.

cq -scan alwayson

A graphical user interface

If launched with the -w flag, it'll open a window with menus and buttons oh my. (the buttons let you lock to a particular channel and pause scanning). The window above shows my most typically setup that I run daily.


Wes Hardaker
Last modified: Tue Sep 2 07:56:39 PDT 2008