APRS Talk - a companion M0YNG.uk

Created 2019-09-22

Modified 2019-09-23

Tagged

In September 2019 I gave at talk at The Cheltenham Amateur Radio Association about APRS. I'm far from an expert on the topic, but I was told I didn't say anything that wasn't true, so take from that what you will.

This post won't try and replicate the talk, but it will try to be a companion to the talk, and hopefully cover the same material for those who weren't there.

some radio equipment sits in front of a projector screen

What is APRS?

It is "Automatic Packet Reporting System" (Not "Amateur"). It was designed by Bob Bruninga, WB4APR (who absolutely didn't make up the name to match his callsign.)

It's not ADSB, although they do share some key similarities and I often get them confused, for example:

What is it for?

The most common use is location reporting/tracking. You may have hard of or used aprs.fi, but there are other sites out there such as aprsdirect.com and FindU

a trace of KC0RJX's journey from aprsdirect.com

APRS is not a vehicle tracking system. It is a two-way tactical real-time digital communications system between all assets in a network sharing information about everything going on in the local area. APRS.org

Given that, what else can it do?

Weather

G0LFP>APRS,TCPIP*,qAC,CWOP-3:@161930z5154.95N/00203.15W_357/ 002g003t060r000p000P000h84b10228eCumulusFO

This is compressed, because APRS has a limited number of characters that can fit into one message. However, it can be expanded to show more details.

At this point I read off from a real weather report I'd received in the last half hour. A printout showing the wEATHER

Telemetry

A fellow CARA member has an APRS station in Yorkshire, although a good position for RF, there isn't any mains power available, so he's rigged it up with solar panels and a battery. The station reports its own battery status, solar generation, temperature, etc. via APRS.

A graph of MB7UHT's battery level

You can view the graphs yourself by looking at the MB7UHT Telemetry page of APRS.fi.

Finding local radio things

I posted on mastodon.radio that I'd be doing this talk, and asked people what features of APRS should I mention that are less well known. Bryan KC0RJX provided most of this list;

These are all really useful if you are new, or visiting, an area. In an era before the Internet, this was a great way to find out how and who you could talk to, and it is still useful now. Sure, you can find clubs online, but it's quite common for amateurs transmitting their location to include a frequency or other way to talk to them, and you know they are likely to be around to talk to if they are transmitting this information.

Repeaters and clubs are interesting too, I've seen a few listed with details of the frequency and CTCSS, or next meeting details. It's quite an interesting and fun way to use radio, for doing radio things.

We keep showing online tools that ingest APRS info, but all of this can be done directly off the air, and in theory you could listen for maybe an hour and know everything radio nearby without having to touch the Internet at all.

Short Messages

This bit was risky, and I was really excited that it (mostly) worked!

APRS can be used to send short textual messages to other APRS stations, and in this live demo I attempted to send and receive a message from SP6MR - Michał in Wrocław, Poland.

I used the following setup; * APRSDroid on my phone * A baofeng handheld radio * A Yaesu FT-1900 2m radio connected to * A TNC Pi * A Raspberry Pi 3 b+ * APRX software * A WiFi hotspot on my phone

I explained that in theory the message would flow like this;

Message → Radio → RF → Radio → TNC → iGate → Internet → SR6NDZ → RF → SP6MR-7

SR6NDZ is an APRS repeater near SP6MR that messages had previously been transmitted through in our tests.

For the fun of a live demo I transmitted the message using "sound", I held the PTT on the radio, and hit "send" on my phone, which made noises that were picked up by the radio's microphone. I was able to see that the packet had been received by my Pi, and then showed the audience the message showing up on APRS.fi, proof that it had entered the Internet.

Later in the talk I was excited to see that SP6MR had let me know via mastodon.radio that the message had arrived, and for bonus points I was able to read out and show the reply "Greetings from Poland", which had passed through SR6NDZ!

A printout showing the message

Because I didn't have the radio connected to my phone we didn't see the reply get decoded by APRSDroid, but we did see it print out and be sent over RF by the "base station", so that was cool.

But how does it work?

Here I got into the more technical side, having teased people with what APRS can do, and showing it doing it, I thought it would a good time to explain how that actually worked.

It's like, but not, packet radio

Ok, this isn't quite fair. APRS is packet radio, it uses AX.25 after all. But, it uses the "Unconnected broadcast" feature and we don't expect packets to be received by anyone else, so it's different to traditional packet radio where we seek acknowledgement for all of our packets.

Everyone is on the same frequency

144.8MHz in 🇪🇺, other places are different. You can look it up if you need to know.

Packets have a "path" and a "life"

We don't expect our packets to be heard by anyone else, but we hope they are. These days it is often the goal of the operator to get their packet into an iGate, and thus onto the Internet for people to see. We might be far from civilization, using low power, etc. so APRS has a feature built in to repeat our packets from more powerful and capable stations. This way a handheld radio on low power can hopefully be heard by a bigger station nearby, which can repeat the packet for more stations to hear it, hopefully one of these is an iGate and the packet is passed onto the Internet.

Obviously we don't want these packets to keep bouncing around forever, so we give them a path, which dictates their lifespan. Commonly we'd use WIDE2-2, this means we'd like the packet to be repeated twice. It might look like this;

iGates are often in suboptimal RF locations, due to the nature of where reliable power and Internet can be found (aka people's houses) and generally this system works well.

The path can work the other way too, so if a packet destined for Station 1 is seen by Station 7 on the Internet, it knows it has heard Station 1 "recently" and will pluck the packet off the Internet stream and transmit it via RF, Station 3 and 2 will also know they can pass on the packet and repeat it. Eventually, in theory, the packet gets to Station 1.

SSIDs and Icons

Stations can set an icon to show what they are. They don't transmit the icon, just a letter which represents which icon should be shown by the receiving station / website / etc.

These examples are taken from the APRS.fi icon set on Github.

a table of APRS Symbols

SSIDs, or Secondary Station Identifiers, are needed because you only have one callsign and it can't be used by your home station, and your car, and your handheld, at the same time. There is a convention for the numbers.

This list is taken from aprs.org

Yet more uses!

You can also send short messages to the special recipient "EMAIL" to send an email, which is useful if you don't have access to the Internet for any reason and you want to communicate with someone who might not have a radio turned on right now.

You can also send an SMS to a mobile phone! I've never got either of these to work though...

However, I am working on an APRS-to-Fediverse thing that would allow you to post status updates to mastodon.radio via APRS.

How do I do APRS?

At this point I hoped people were interested enough to try doing APRS for real!

The easiest way to get started is probably to go grab APRSDroid and just use the Internet directly. It's kinda pointless, but it does work.

The next step up would be to either connect your phone to a handheld radio using a wire (not like I did in the demo!) and do APRS over RF.

You could also seek out a mobile/handheld radio that does APRS, but be careful. I mentioned that I had the AnyTone 868 for this reason, but didn't realise until later that it only did "sending location" APRS, and couldn't do messages or receive anything. So, check what you want to do, and that the radio can do that. G6USL and G0TMP were in the audience and added that they used the Kenwood TH-D72 and TH-D7E and that these were properly equipped APRS handhelds.

Direwolf is a good option too, it is a soundcard TNC so all you need to do if connect the output of your radio to the line in of your computer soundcard and Direwolf can start decoding packets. However, I did say that I'd not had much luck getting transmit to work, as you either rely on VOX or have to make a way to control the PTT using e.g. serial connections, which can be a pain.

Lastly I showed my TNCPi, a hardware TNC that sits atop my Pi computer. It fixes all the issues with PTT, and allows me to talk directly via serial, KISS, etc. which is a lot easier. I also suggested that I was sure lots of the audience would have a TNC gathering dust in the loft that could be revived.

Questions

In this part it people asked about things like different frequencies for the USA, etc. but other interesting things came up too.

There are a few satellites which have APRS on them, which is cool and a fun way to send your packets far and wide. The ISS also has APRS, but it's not always available, on, etc.

RAYNET make a lot of use of APRS, and it's very popular. However, since the loss of GB3Uk and other repeaters locally, one being APRS, RAYNET have had to work harder to provide coverage enough to make full use of APRS.

Throughout this you will notice I mention printing things out, and the photos are of a receipt roll. Well, this is exactly that. I threw together some basic python to read the log files using APRSLib, and use a borrowed thermal printer to spit out the APRS messages received. It's a great fun way to engage people, very few people look at screens on a stand, but will ask about something that randomly spits out a bit of paper! G6USL seemed to take much amusement in transmitting his location and seeing the printer work!

If you have any questions, think something I've said here is wrong, etc. please send me a toot! I'm @[email protected]

Share this post on Mastodon