## Synopsis This tool reads a [WSPRnet spot database dump](https://wsprnet.org/drupal/downloads) in CSV format from standard input, identifies QSOs by correlating mutual WSPR spots within a four‐minute time window and writes an [ADIF](https://adif.org/) log to standard output. ## Usage ### Example ``` gunzip -c wsprspots-2021-01.csv.gz | wsprspots DO5EU > wsprspots-2021-01.adi ``` **Generated ADIF log:** ``` Mutual WSPR spots for DO5EU 3.1.120210219 204507wsprspots0.1.0 202101122120202101122124DO5EUDP0GVNJO62qmIB59ui-29-293.5700037.04002280m40m5.01190.5012138052-way WSPR spot on 80 m (RX 40 m) with 500 mW (27 dBm), SNR -29 dB, drift +0 Hz/s, distance 13805 km2-way WSPR spot on 80 m (RX 40 m) with 500 mW (27 dBm), SNR -29 dB, drift +0 Hz/s, distance 13805 kmWSPRnet spot IDs 2736249418, 2736254754WSPRY ``` ## Implementation notes There is a lot of potential for optimisation in this code.