Re: AC Log Calldata Out of Date?


Bert W0RSB
 

If you're so inclined, you can make your own up-to-date callbook every Sunday.

You'll need a copy of FCC document pa_ddef51, ULS Data File Formats, in order to make sense of the data you download.
https://www.fcc.gov/files/paddef51pdf

Start by downloading the raw call data from the FCC:

I use "wget" like this:
wget --no-check-certificate --verbose --progress=bar -4 -N ftp://wirelessftp.fcc.gov/pub/uls/complete/l_amat.zip
(The FCC database is updated every week, on Sunday.)

Then extract the two pieces of the database that you need in order to extract only the current, active calls, EN.DAT and HD.DAT:

unzip -o -C l_amat.zip EN.DAT HD.DAT

The file EN.DAT has a list of all ham calls, even those that are not currently active.

The file EN.DAT has all the name, address, and other data needed to make a useful callbook. Just remember that not all the entries are for active calls.
EN.DAT also has a "Unique System Identifier" in field 2 for each call which you'll use to find the entry with the status data in HD.DAT.

The file HD.DAT has the same list of calls without the personal data, but has a status code that you use to determine if the call is currently active.
In HD.DAT, if the field 6 "License status" has the alphabetic status "A" then the call is currently active.
In HD.DAT, the "Unique System Identifier" is also in field 2.

If you have database software available, you can create tables with HD.DAT and EN.DAT data, extract the active call entries, which you can then use to produce a result containing only the active files in whatever format you need.

My simple-minded brute-force approach is to first extract all entries from HD.DAT that have a "License Status" field of "A", saving only the "Unique System Identifier" in a C#  Hashtable.

I then pass through the EN.DAT table. If the "Unique System Identifier" matches one I saved when I devoured the HD.DAT table, I know that the call is active.

If all you want is a simple list of all currently active calls, just copy the fields from each line in EN.DAT that's marked as active and format the parts that you want.

If you want to split all the calls in a format that you can feed to ACLOG, you have a bit more massaging and formatting to do.

There are probably typos, misspellings, and confusion between HD.DAT and EN.DAT in this post, but I think you can make your way through the mistakes.

Have fun!

--
Bert - W0RSB
Saint Paul, MN

Join N3FJPSoftwareUsers@groups.io to automatically receive all group messages.