Using AR Cluster Spot Filters

When you connect to a DX Cluster node running version 6 of the AR Cluster software, you receive DX announcements, termed spots, from all around the world. If you do this, you should choose the Assisted item for the Assisted: choice in the Cabrillo Category Items box in your settings opened by Log ► Cabrillo Settings….

During a contest, there can be millions of spots per day. SkookumLogger converts received spots into activities and displays them in Activity tables for each band. The conversion eliminates some of the spots, but that processing can interfere with other concurrent processing by SkookumLogger so it is better to eliminate spots before they are sent to you. You do this by defining a spot filter. Spot filters are stored on the node that you are connected to, and reduce the number of spots that are sent to you without affecting anyone else. Each node has a possibly different spot filter associated with your login call.

You can use SkookumLogger to define a spot filter, in the DX Cluster preferences panel. The challenge is understanding what to enter there. While the Help ► AR Cluster Spot Filter Guide menu item opens a web page containing the documentation for spot filter syntax, that syntax is unfamiliar to those without a computer science or mathematics background. Also, some of the terms in the documentation are ill-defined. This note attempts to elaborate on that latter point.

This is the default spot filter provided by SkookumLogger:

(
 (Call=[<buddies>]) OR
 (
  (Band=[160,80,40,20,15,10,6,4,2]) AND
  (NOT Comment=[*PSK*,*TTY*,*BEACON*])
 )
)

I've used multiple lines and indenting to clarify the elements of the filter. Some things to note about the construction of a spot filter:

The first clause in the filter, (Call=[<buddies>]), means “send me any spot for a call in my list of buddies.” The content of the <buddies> list is filled in when you choose Update Spot Filter in DX Cluster preferences. SkookumLogger can construct a similar clause for your blackisted calls, to be used like this: (NOT Call = [<blacklist>]). This clause means "do not send a spot for a call in this list.” I use this to filter out common busted spots as well as a few calls that I never want to work.

OR after the first clause means “also send me spots that pass the following clauses.” There is one following clause, itself containing two clauses separated by AND, meaning “both of these clauses must be satisfied.”

The Band clause restricts spots to contest bands between 160m and 2m. The Comment clause, with the NOT prefix, requires that delivered spots must not contain the characters PSK, TTY, or BEACON in their comments fields.

Skimmers generate nearly all of the CW spots and many of the FSK/PSK spots. These flags affect spots generated by skimmers:

I've used this clause with satifactory outcome:

(NOT Skimmer OR (SkimValid AND SkimBusted=0))

SkimBusted=0 should be NOT SkimBusted for consistent syntax, but the latter doesn't work.

So far, these examples deliver spots from everywhere in the ham universe. During contests you may want to see spots only from sources near you. You can devise a filter based on the spotter's location with a clause like one of these:

AND (SpotterItuZone = [4,8,9])

AND (SpotterState = [ME,NH,VT,MA,RI,CT])

The DX Cluster network is surprisingly good at knowing the true locations of skimmers with out-of-call-area call signs.