Tuesday, January 7, 2014

How to Make QSO Maps from your Ham Radio Logs Part 1/5

This post will describe how to take a ham radio QSO log file a make an attractive map.

These instructions should work on Linux, Windows, MacOS, and other systems, although I have only personally tested them on Linux. If you run into problems on other platforms, please let me know.


You need to have the following software installed working
  1. Quantum GIS 2
  2. Python 2.7 (earlier versions may also work)
  3. https://pypi.python.org/pypi/geojson
  4. https://github.com/n1ywb/python-hamtools
  5. https://github.com/n1ywb/eqaztk

Georeferencing the Log

The first step is to georeference your log file. For those of you that are not GIS nerds, this means figuring out where on earth some thing is, in this case the callsigns of the stations worked.

For this step we will use the Python Hamtools package I have developed. It includes a utility named "geolog". Geolog reads log files in ADIF or Cabrillo format, looks up the lat/lon of each callsign, and outputs GIS data files in GeoJSON and KML (Google Earth) formats.

Geolog uses QRZ.com as the primary source of lat/lon data. To use this functionality you must buy an QRZ.com XML account. If you're interested in making accurate maps, it's really a must. As a fallback, Geolog will use the cty.dat file to locate a callsign within a prefix area. This is better than nothing, and for calls not listed on QRZ.com it's the only option. But it's substantially less accurate than QRZ.com data.

If you prefer you may put your QRZ username and password into the geolog config file so you don't have to type it every time. Refer to the geolog readme for instructions.

Once you have geolog installed, it's easy to run. E.g.

geolog N1YWB_ARRL_10m_2013.LOG N1YWB_ARRL_10m_2013

You should see something like this

INFO:geolog:QRZ cache: /home/jeff/.qrz_cache
INFO:geolog:Opened Cabrillo format log
INFO:geolog:Callsign: N1YWB
INFO:geolog:Read 351 records
WARNING:qrz:maybe cache table exists?
WARNING:geolog:QRZ lookup failed for TM1T, no location data
WARNING:geolog:QRZ lookup failed for OM1DK, no location data
WARNING:geolog:QRZ lookup failed for I8QLS, no location data
WARNING:geolog:QRZ lookup failed for IQ9UI, no location data
After geolog is finished, you should have three new files, in this case:
  1. N1YWB_ARRL_10m_2013.kml
  2. N1YWB_ARRL_10m_2013_lines.geojson
  3. N1YWB_ARRL_10m_2013_points.geojson
 The KML file can be opened directly in google earth. The GeoJSON files are useful for importing into QGIS, which is described in the next section.

No comments: