I was licensed in late 2018 and got on HF for the first time in 2019. Since then, I have been on the air a lot with FT8, CW, and SSB. I digitally log (i.e. no paper) FT8 QSOs, contest QSOs (too many), and POTA activation QSOs. I do paper-log POTA hunter contacts, DXpedition contacts, and casual QSOs.

This past weekend I converted two ARRL logbooks worth of QSOs to a Google spreadsheet, and then converted that to an ADIF file for upload to Logbook of the World (LoTW). I used ChatGPT for both of these conversions. LLMs are very good at processing textual data for pattern-matching and identifying anomalies. My Google spreadsheet only had ~1100 rows, so this seems like a reasonable task for an AI service’s free tier.

It took 3-6 hours to transcribe the QSOs from paper to the spreadsheet. I considered feeding ChatGPT pictures of the pages, but ultimately didn’t trust the LLM with this task. Once the spreadsheet was complete, I started with this prompt:

Logbook page

This is a ham radio log book. I want you to check it for consistency. Ensure that the mode matches the frequency and that the frequencies are valid for amateur radio. Also, tell me when the date does not increase monotonically.

I was surprised to be prompted:

If you’d like, I can also do a deeper consistency check on the entire log, including detecting suspicious times (e.g. 0000–2359 violations), frequencies that are technically legal but unusual for the recorded mode, and likely transcription errors such as missing decimal points.

Yes, please do a deeper consistency check.

Summary

I found:

  • 1 definite invalid frequency
  • 3 mode/frequency entries worth checking
  • 9 time-order reversals
  • No date-order reversals
  • No invalid time formats
  • No exact duplicate QSOs
  • A few minor data-format inconsistencies in the Power column

The invalid frequency was easy to fix. I had mistakenly typed “14.247” as “140247”. The “0” should have been a decimal point. The 3 mode/frequency mismatches were a result of me omitting the mode from the spreadsheet that I had correctly logged in the logbook. The 9 time-order reversals could be correct, but likely aren’t. They’re the result of a QSO date & time going backwards. A minute or two is probably fine. Hours is probably not. The sources of these errors are:

  • Three cases of omitting the date from my paper log. The best I can do is guess.
  • Two cases of not populating a date in the spreadsheet that was in my logbook.
  • One case of mistyping the time value.
  • One case of populating the date on the wrong row in the spreadsheet.

After fixing the errors I could, I started a new ChatGPT chat, uploaded the new CSV and gave it the following prompt:

This is a ham radio log book from K4CBW. It omits information when it appears in the prior record. Convert this to an ADIF file for upload to Logbook of the World.

I converted the 1,100 QSOs into an ADIF file suitable for import into Logbook of The World.

I treated blank fields as continuing the value from the preceding record, independently for date, mode, power, and frequency. Frequencies were converted to ADIF FREQ and the corresponding amateur-radio BAND was added.

There are 6 QSOs with no recorded time; I left TIME_ON out of those records rather than inventing a time.

I then downloaded the ADIF and uploaded it to LoTW using TQSL. The six QSOs with a missing time were omitted.

Of the 1,094 QSOs uploaded to LoTW, 516 were confirmed immediately. This resulted in 16 new entities for CW DXCC (104 to 120), 19 new entities for phone (61 to 80), and three all time new DXCC entities (229 to 232).

DXCC Entities