decode_aprs [ text-file ]
text-file 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.
decode_aprs is useful for understanding sometimes obscure APRS packets and finding errors.
You see something like this show up on your screen:
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.
echo 'M0XER-3>APRS63,WIDE2-1:!/4\;u/)K$O J]YD/A=041216|h`RY(1>q!(|' | decode_aprs
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:
n2cma>APRS,TCPIP*,qAC,SEVENTH:@212127z43.2333n/77.1w_338/002g001t025P000h65b10208.wview_5_19_0 K0YTH-10>APNU3B,NULL,qAR,K0DMF-10:!4601.5NS09255.52W#PHG6360/W2,MNn 444.575 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
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:
cat findu-errors.txt | sed -e 's/,qA.*:/:/' | decode_aprs
In the first case, we get,
Address has lower case letters. "n2cma" must be all upper case.
After changing the source address to upper case, there are other issues. Identifying them is left as an exercise for the reader.
In the second example,
Invalid character in latitude. Found 'N' when expecting 0-9 for hundredths of minutes.
Invalid character in longitude. Found '9' when expecting 0 or 1 for hundreds of degrees.
In the third example,
Warning: Lower case letter in Maidenhead locator. Specification requires upper case.
Digi2 Address, " WIDE2-1" contains character other than letter or digit in character position 1.
More detailed information is in the pdf files in /usr/local/share/doc/direwolf, or possibly /usr/share/doc/direwolf, depending on installation location.
Applications in this package: aclients, atest, decode_aprs, direwolf, gen_packets, ll2utm, log2gpx, text2tt, tt2text, utm2ll