APRS on the Cheap
Automatic Packet Reporting System (APRS) is a digital mode used by HAM radio operators to send small packets of data on the radio waves. The format was invented by Bob Bruniga in the 1990s and is still popular today. Common uses of APRS are to transmit location data, send messages, weather, and even emails.
Handheld APRS enabled radios like the Yaesu VX-8DR can go for over $400 these days. I needed a different, cheaper solution to dip my toes into APRS. I purchased a BTECH APRS-K1 Pro v1.2 for about $30. It has a Kenwood connector at one end and a USB-C on the other. I can plug one end into my Quansheng UV-K5, and the other into my phone running aprsdroid, or my laptop running direwolf.
My first setup was with aprsdroid outside in the park. Using aprs.fi I found I transmitted a packet to a internet gateway repeater 8 Miles away! This took 15 mintues to get my first packets through, and to get the settings right.
On the receive side, I was only able to collect one packet with my Quansheng which is disappointing. My RTL-SDR connected to the GQRX APSK reader was able to collect dozens of packets during the same time period. I wonder if I got a better antenna connected to the Quansheng I would get better results, or if the APRS-K1 + Quansheng is not up to snuff.
TIP: I got much better results demodulating APRS with GQRX by reducing the RTL-SDR sample frequency. I think this is due to the sample rate lowering the receive bandwidth, so it sorta acts like a bandpass filter.
Some selected packets I received on my RTL-SDR and the GQRX APSK demodulator:
11:58:43$ fm KE2DOE-10 to APDW17-0 via WIDE1-1,WIDE2-1 UI PID=F0
!4043.78NS07402.48W#PHG2020Jersey City iGate
12:01:50$ fm N2NFG-0 to APFII0-0 via N2NFG-10,KD2CIF-1,WIDE2-0 UI^ PID=F0
@170145h4051.30N\07336.22W-197/000/A=000143Mobilinkd TNC4 & Wouxon KG-Q10H winlink APMAIL!wzH!
12:02:23$ fm KD2UTC-1 to APTWR-0 via KD2CIF-1,WIDE1-0 UI PID=F0
!4024.59N/07413.10W&PHG2260/A=000065 IGate MODE
12:02:34$ fm N2ACF-2 to APMI06-0 via W2AEE-0,WIDE2-1 UI PID=F0
@231632z4109.46N/07410.71W#WX3in1Plus2.0 U=13.8V,Temp T=41.0F N2ACF Digi
12:02:48$ fm K2BRT-9 to TQ2R1X-0 via KC2OUR-3,WIDE1-0,KD2CIF-1,WIDE2-0 UIv PID=F0
`f',p,;k\`"5N}_)
12:02:53$ fm KC2SYO-9 to TQPS2V-0 via WB2ZII-0,KD2CIF-1,WIDE1-0,WIDE2-1 UIv PID=F0
`eM1l 5k/`"4Y}_4
12:03:06$ fm N2WGD-7 to TPTU6R-0 via W2AEE-0,WIDE1-0,WIDE2-1 UIv PID=F0
`eP2l#Q[/`"49}At the QTH_0
12:03:11$ fm W2AEE-0 to ID-0 UI^ PID=F0
W2AEE/R RELAY/R WIDE/R TRACE/R TRACEn-n/R WIDEn-n/R
12:03:17$ fm K2PUT-15 to APRS-0 via WB2ZII-0,KD2CIF-1,WIDE2-0 UI^ PID=F0
!4127.67NP07343.51W#PHG2250/PEARL 145.130-PL136.5
12:03:18$ fm K2PUT-15 to APRS-0 via WB2ZII-0,W2AEE-0 UI^ PID=F0
!4127.67NP07343.51W#PHG2250/PEARL 145.130-PL136.5
12:03:30$ fm W1EDH-15 to APN383-0 via NA1RA-12,WB2ZII-0,KD2CIF-1,WIDE2-0 UI PID=F0
!4136.32N/07236.89W#W1EDH CT ARES Region 3 Capitol East
12:03:41$ fm W2EF-1 to APMI06-0 via KD2CIF-1,WIDE2-1 UI PID=F0
@231703z4048.21N/07414.18W-WINLINK - Microsat Digipeter - WEARC
12:03:42$ fm W2EF-1 to APMI06-0 via KC2MDN-2,W2AEE-0,WIDE2-0 UI PID=F0
@231703z4048.21N/07414.18W-WINLINK - Microsat Digipeter - WEARC
12:03:56$ fm KE2X-9 to T0UQ4X-0 via KD2CIF-1,WIDE1-0,WIDE2-1 UIv PID=F0
`fYKl .j/]"3r}146.520MHz Toff.......................=
12:04:12$ fm KM2ARC-15 to APWW11-0 via KC2MDN-2,W2AEE-0,WIDE2-0 UI^ PID=F0
@170401h4042.91N/[email protected] Kellenberg HS Amateur Radio Club
12:04:26$ fm KC2SYO-9 to TQPS4T-0 via WB2ZII-0,KD2CIF-1,WIDE1-0 UIv PID=F0
`eM.l"Dk/`"4\}_4
12:04:32$ fm KD2UTC-0 to T0RT6Z-0 via KC2MDN-2,WIDE1-0,W2AEE-0,WIDE2-0 UIv PID=F0
`f1bl!.k/`"4#}_%
Lets look into what this data means. Lets take this packet for example:
fm N2NFG-0 to APFII0-0 via N2NFG-10,KD2CIF-1,WIDE2-0 UI^ PID=F0
@170145h4051.30N\07336.22W-197/000/A=000143Mobilinkd TNC4 & Wouxon KG-Q10H
winlink APMAIL!wzH!
N2NFG-0
is the callsign of the senderAPFII0-0
is the callsign of the recipient. APFII0-0 is a special callsign for the internet gateway.N2NFG-10,KD2CIF-1
are the digipeaters that repeated the packetWIDE2-0
Is a notation for how many hops the packet can take. The first value here2
means the packet can be repeated 2 times. The second value0
means the packet has already been repeated twice. This value would have beenWIDE-2-2
when the packet was created. Then for every hop, the second value is decremented.@170145h
is the time the packet was sent4051.30N\07336.22W
is the latitude and longitude of the sender-197/000/A=000143
is the altitude of the senderMobilinkd TNC4 & Wouxon KG-Q10H winlink APMAIL!wzH!
an optional message.
I also setup to setup an iGate with direwolf as seen in the cover photo. I was able to transmit packets from my laptop through the Quansheng and receive on the laptop with the RTL-SDR. I have not been able to transmit from direwolf to another iGate, or receive an APRS signal using Direwolf. My Quansheng + BTECH triggers transit with VOX, rather than a PTT, which is not recommended in the Direwolf documentation. This can also be reducing the performance of this setup.
The BTECH APRS-K1 had a really annoying issue where the transmission would never stop. I would have to turn off the Quansheng to stop the transmission. I think it has something to do with the RF power during transmit interfering with the USB-C connection. It would also trigger volume up and down events on my phone when connected to it. This is APRS on the cheap, so I can’t expect too much.
Messing with APRS has been fun, but I would not recommend the BTECH APRS-K1 Pro for APRS with a cheap handheld radio if you need any amount of reliability. It is a fun toy, but not a reliable tool. In the future I hope to get an APRS packet to digipeat off the ISS. I would need directional antenna, and maybe a better handheld radio for that.
-E