.TH DECODE_APRS 1 .SH NAME decode_aprs \- Convert APRS raw data to human readable form. .SH SYNOPSIS .B decode_aprs [ \fItext-file\fR ] .RS .P \fItext-file\fR should contain AX.25 packets in the standard monitoring format or as a series two digit hexadecimal numbers. If the first number is 00 or c0, it will be treated as a KISS frame. If no file specified, data will be read from stdin. .P .RE .SH DESCRIPTION \fBdecode_aprs\fR is useful for understanding sometimes obscure APRS packets and finding errors. .SH OPTIONS None. .SH EXAMPLES You see something like this show up on your screen: .P .RS M0XER-3>APRS63,WIDE2-1:!/4\\;u/)K$O J]YD/A=041216|h`RY(1>q!(| .RE .P What does it mean? If you haven't spent a lot of time studying the APRS protocol specification, most of it probably looks like random noise. Pipe it into decode_aprs to find out. .P .RS .B echo 'M0XER-3>APRS63,WIDE2-1:!/4\\\\;u/)K$O J]YD/A=041216|h`RY(1>q!(|' | decode_aprs .RE .P http://www.findu.com/cgi-bin/errors.cgi has a never-ending collection of packets with errors. Sometimes it's not obvious what is wrong with them. Dire Wolf will usually tell you what is wrong. First, cut-n-paste the bad packets into a text file. Here a few examples: .P .RS .nf n2cma>APRS,TCPIP*,qAC,SEVENTH:@212127z43.2333n/77.1w_338/002g001t025P000h65b10208.wview_5_19_0 .P K0YTH-10>APNU3B,NULL,qAR,K0DMF-10:!4601.5NS09255.52W#PHG6360/W2,MNn 444.575 .P 00 82 a0 ae ae 62 60 e0 82 96 68 84 40 40 60 9c 68 b0 ae 86 40 e0 40 ae 92 88 8a 64 63 03 f0 3e 45 4d 36 34 6e 65 2f 23 20 45 63 68 6f 6c 69 6e 6b 20 31 34 35 2e 33 31 30 2f 31 30 30 68 7a 20 54 6f 6e 65 +.fi .RE .P If you simply fed this into decode_aprs, it would complain about the lower case in qA-something, added by the IGate, in the via path. We can take it out with something like this: .P .RS .B cat findu-errors.txt | sed -e 's/,qA.*:/:/' | decode_aprs .RE .P In the first case, we get, .P .RS Address has lower case letters. "n2cma" must be all upper case. .RE .P After changing the source address to upper case, there are other issues. Identifying them is left as an exercise for the reader. .P In the second example, .P .RS .PD 0 Invalid character in latitude. Found 'N' when expecting 0-9 for hundredths of minutes. .P Invalid character in longitude. Found '9' when expecting 0 or 1 for hundreds of degrees. .PD .RE .P In the third example, .P .RS .PD 0 Warning: Lower case letter in Maidenhead locator. Specification requires upper case. .P Digi2 Address, " WIDE2-1" contains character other than letter or digit in character position 1. .PD .RE .SH SEE ALSO More detailed information is in the PDF files at https://github.com/wb2osz/direwolf/tree/master/doc/. Applications in this package: aclients, atest, decode_aprs, direwolf, gen_packets, ll2utm, log2gpx, text2tt, tt2text, utm2ll