SDR CTF: APRS (Automatic Packet Reporting System)
APRS is still one of my favourite modes with its squawky packets bursting, and your map slowly filling up with icons. I always felt it had a huge potential for coordinating events. It felt like a natural fit for EMCOMM.
Getting Started with APRS on Linux
APRS is a Narrow FM modulated, 1200 Baud, Audio Frequency Shift key mode. On Linux open up gqrx, set your mode to narrow FM and tune to 144.39 MHz. Hopefully you should start to see the data bursts and hear the squeee-awk sounds. Below I'm engaging an external LNA mid session and you start to see the first squawk of data.

Gqrx has a built in AFSK1200 decoder. Click on tools and select "AFSK1200 Decoder" which will open up a new window. Here we see the first few packets arrive.

Now, From the Command Line
We don't need fancy GUIs to get at the packets, and it's easier to put them to use without one. We'll use rtl_fm as we have in other flags, and will also need multimon-ng.
multimon-ng (C) 1996/1997 by Tom Sailer HB9JNX/AE4WA
(C) 2012-2014 by Elias Oenal
available demodulators: POCSAG512 POCSAG1200 POCSAG2400 EAS UFSK1200 CLIPFSK FMSFSK AFSK1200 AFSK2400 AFSK2400_2 AFSK2400_3 HAPN4800 FSK9600 DTMF ZVEI1 ZVEI2 ZVEI3 DZVEI PZVEI EEA EIA CCIR MORSE_CW DUMPCSV SCOPE
Enabled demodulators: AFSK1200
Found 1 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001
Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Tuner gain set to automatic.
Tuned to 144643575 Hz.
Oversampling input by: 46x.
Oversampling output by: 1x.
Buffer size: 8.08ms
Exact sample rate is: 1014300.020041 Hz
Sampling at 1014300 S/s.
Output at 22050 Hz.
APRS: N8WCT-1>APN391,WIDE2-2:=3959.91NS08301.32W#PHG9590/W2 OHn-N/Columbus UI-Digi & I-Gate
APRS: N8WCT-1>APN391,K8GPS-4*,WIDE2-1:=3959.91NS08301.32W#PHG9590/W2 OHn-N/Columbus UI-Digi & I-Gate
APRS: AB8JL-1>T0UP7X,KB8PXM*,K8GPS-10*,WIDE1*,K8GPS-4*,WIDE2*:'m;`l ^\-/] Massillon OH
Visualizing Packets
The real power in APRS is with the visualization of the data that are being exchanged between the stations. Plotting out station locations, overlaying with weather information or radar plots can enhance your situational awareness. With the right client, you can define and share point-based icons and polygonal regions to help coordinate your exercise or response efforts.
AE6RS has done the heavy-lifting and has a bash script that you can use to feed the multimon-ng output into xastir, a linux APRS client.
Next Steps
APRS runs on top of AX.25 and packet radio. Can you find non-APRS packet?
- Log in to post comments