📁 Other

Amateur Radio Contest Log Formatter: Cabrillo 3.0 Header, QSO Lines, and Pre-submission Checks from a Logbook Export

Help a ham radio operator turn a messy logbook export into a Cabrillo 3.0 file the contest robot accepts: correct CONTEST and CATEGORY header values, QSO lines with frequency in kHz, mode codes, UTC date and time, and the exact exchange for that contest, plus duplicate, band edge, and exchange checks before upload.

0.0
0Reviews
P
October 5, 2026

Prompt

Act as an amateur radio contest log checker who helps operators submit Cabrillo logs to contest sponsors and knows why log robots reject files. You follow the Cabrillo 3.0 tag format exactly and you take the exchange and category names from the sponsor's rules, never from memory alone.

Inputs:
- Contest name, date, and the sponsor's Cabrillo CONTEST value: [ContestRules]
- The exchange sent and received as defined by the rules: [ExchangeFormat]
- Station facts: callsign, operators, power, bands, assisted or not, transmitter count, location: [StationFacts]
- Logbook export rows (ADIF fields or CSV columns as pasted): [LogRows]
- Logging program that made the export, if any: [LoggerName]
- Output format: [Format]

Generate:
1. Header: START-OF-LOG: 3.0, CONTEST, CALLSIGN, the CATEGORY-OPERATOR, CATEGORY-BAND, CATEGORY-MODE, CATEGORY-POWER, CATEGORY-ASSISTED, CATEGORY-STATION, CATEGORY-TRANSMITTER lines using values the sponsor accepts, then OPERATORS, NAME, ADDRESS lines, EMAIL, CREATED-BY, and CLAIMED-SCORE only if the scoring rules were given.
2. QSO lines in the order: QSO:, frequency in kHz, mode code (CW, PH, RY, DG), date yyyy-mm-dd, time hhmm UTC, sent call, sent exchange, received call, received exchange, aligned in columns.
3. Conversion notes from LogRows: how each export field maps to a Cabrillo field, MHz to kHz conversion, local time to UTC if needed, and SSB, USB, or LSB mapped to PH.
4. Pre-submission checks: duplicates on the same band and mode, QSOs outside the contest period, frequencies outside the band, exchanges with the wrong shape (for example a zone over 40 in CQ WW), and missing fields.
5. A short list of fixes the operator must decide by hand, with the row number.
6. Submission note: end with END-OF-LOG:, save as plain text with the callsign as the file name, and upload through the sponsor's web form or address in ContestRules.

Constraints:
- Do not change any callsign or exchange that was logged; flag suspected busted calls instead.
- Do not claim a score unless the scoring rules are in ContestRules.
- No em dashes.

Instructions

Replace every [bracket] with your details before running. Works on ChatGPT, Claude, and Gemini.

Generated Output

This image was generated using the prompt above.

Amateur Radio Contest Log Formatter: Cabrillo 3.0 Header, QSO Lines, and Pre-submission Checks from a Logbook Export - Result

Examples

Example Input

ContestRules: CQ World Wide DX Contest SSB, last full weekend of October 2026, CONTEST value CQ-WW-SSB, 48 hours UTC, scoring rules not pasted
ExchangeFormat: RS report plus CQ zone (1 to 40)
StationFacts: N8QRT, single op, low power 100 W, all bands, non assisted, one transmitter, fixed station, CQ zone 4, Ohio
LogRows: 1) 14.2050 USB 2026-10-24 00:02 DL1ABC 59 14 | 2) 7.1550 LSB 2026-10-24 00:09 EA8XYZ 59 33 | 3) 14.2050 USB 2026-10-24 00:15 DL1ABC 59 14 | 4) 21.3100 USB 2026-10-24 01:40 JA1ZZZ 59 52
LoggerName: phone app CSV export, times already UTC
Format: Cabrillo file then checks

Example Output

1 and 2. Cabrillo file
START-OF-LOG: 3.0
CONTEST: CQ-WW-SSB
CALLSIGN: N8QRT
CATEGORY-OPERATOR: SINGLE-OP
CATEGORY-BAND: ALL
CATEGORY-MODE: SSB
CATEGORY-POWER: LOW
CATEGORY-ASSISTED: NON-ASSISTED
CATEGORY-STATION: FIXED
CATEGORY-TRANSMITTER: ONE
OPERATORS: N8QRT
NAME: [YOUR NAME]
ADDRESS: [STREET]
ADDRESS-CITY: [CITY]
ADDRESS-STATE-PROVINCE: OH
ADDRESS-COUNTRY: USA
EMAIL: [YOUR EMAIL]
CREATED-BY: hand formatted from phone app CSV
QSO: 14205 PH 2026-10-24 0002 N8QRT         59  04     DL1ABC        59  14
QSO:  7155 PH 2026-10-24 0009 N8QRT         59  04     EA8XYZ        59  33
QSO: 14205 PH 2026-10-24 0015 N8QRT         59  04     DL1ABC        59  14
QSO: 21310 PH 2026-10-24 0140 N8QRT         59  04     JA1ZZZ        59  52
END-OF-LOG:

CLAIMED-SCORE left out: scoring rules were not provided.

3. Conversion notes
- Frequency: MHz x 1000, rounded to whole kHz (14.2050 becomes 14205).
- Mode: USB and LSB both become PH.
- Date and time: already UTC per LoggerName; 00:02 becomes 0002.
- Sent exchange: 59 and your zone 04 added to every line from StationFacts.

4. Pre-submission checks
- Duplicate: row 3 repeats DL1ABC on 20 m phone (row 1). Dupes are usually not penalised in CQ WW but keep it in the log and do not count it; check the current rules.
- Contest period: all four rows fall on 2026-10-24 UTC, inside the window. Confirm the start time in the rules.
- Band edges: 7155, 14205, and 21310 kHz are inside the 40, 20, and 15 m phone segments used in the US.
- Exchange shape: row 4 zone 52 is invalid; CQ zones run 1 to 40. Japan is normally zone 25.
- Missing fields: NAME, ADDRESS, and EMAIL placeholders still need your details.

5. Hand decisions
- Row 4: zone 52 is a likely logging error. Do not change it unless you are sure from your audio or notes; a wrong exchange may cost that QSO either way.
- Row 3: confirm it is a true duplicate, not a second station with a similar call.

6. Submission
Save as N8QRT.log in plain text (no word processor formatting), check the file ends with END-OF-LOG:, and upload through the log submission page listed in the CQ WW rules.

Reviews (0)

Please login to leave a review.
Loading reviews...