Introduction to APRS

APRS is a great, and often underestimated tool. If you’re not familiar with what APRS is, as the APRS creator describes, APRS 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. On ham radio, this means if something is happening now, or there is information that could be valuable to you, then it should show up on your APRS radio in your mobile.”

Many people think APRS is just for GPS tracking; some sort of free, ham-powered lowjack alternative. While this is a popular use case due to the ease and low cost of setting such a system up (in fact, marathons often use APRS to track their contestants on a budget), it is just one of the tools in the extensive APRS toolkit. APRS can be used to:

So what kind of equipment do you need to run APRS? Well, while you can buy radios such as the Yaesu FT-DR series or the beautiful Yaesu FTM-400DR that have APRS support built-in, you can likely use your existing radios and an audio interface (such as a Digirig or Signalink USB) to interface with a computer or smartphone. Then, using software such as YAAC on any java-capable PC or APRSDroid on android, you have a full-fledged APRS system set up that’s capable of doing everything we listed above!

You can even make your own digipeater since, unlike voice repeaters, digipeaters work in simplex by repeating out data packets it receives after it receives it, instead of while it receives it, meaning any transceiver that has audio in / out will work. Some people use a UV-5R, a Digirig, and a raspberry pi zero to make their APRS station!

A Simple APRS Setup using an HT, Bluetooth TNC, and a smartphone!

So What is an IGate?

APRS has another trick up it’s sleeve. Small clusters of digipeaters and APRS stations can interface with the internet to connect stations all around the world. APRS is not dependent on internet, so localized clusters still work if the internet went down, but this integration allows networks without a direct radio link to connect together in one world-wide mesh! This also allows services, such as SMSGTE (the SMS texting gateway) and WXBOT (the weather forecast bot) to work.

Connecting these APRS networks to the internet are IGates. IGates are normal APRS stations, but they’re connected to the APRS-IS network. Why? “An IGate (Internet Gateway) has two functions: to pass all packets heard on RF to APRS-IS and to pass all message packets destined for local stations to RF (if a bidirectional IGate)” (Source: APR-IS).

IGates can be set up with the same software that makes a digipeater work, such as YAAC. In fact, making a digipeater into an IGate is as simple as checking a few boxes within the software’s config and setting the station icon to match that of an IGate digipeater.

Baofeng UV-5R Hooked up to YAAC to run as a full digipeater and IGate.

Receive Only IGates

An APRS IGate station’s ability to transmit data from the internet over the air and its ability to relay received rf data and relay it to the internet is split into TX and RX IGating. What this means is that you can technically enable just one of them. For example, you could use an SDR (software defined radio) receiver such as an RTL-SDR to receive APRS packets and relay them to the internet. Since the RTL-SDR cannot transmit, it would be one-way. This is called an Receive-only or RX-only IGate.

These can be attractive because they allow greater receive coverage to get essential information such as position and status. It cannot support APRS messaging since the acknowledge packet will never be sent back to the originating station, although the message may still be sent out and received by it’s target. It seems like an easy way to get your feet wet in APRS without dedicating a transceiver or worrying about interference when it transmits.

Do RX Only IGates Damage the APRS Network?

However, as attractive as receive-only APRS stations may appear, many hams have said that it can be damaging to the APRS network. When the APRS-IS servers want to send a message to a user over RF from the internet, they’ll choose the station that heard the recipient’s beacon most recently. The theory is that the APRS-IS servers can’t tell the difference between a receive-only IGate and a full RX/TX IGate. As such, they’ll send the message to a receive-only gate which will dispose of it since it has no way of sending it out over the air, even if there is a TX capable IGate within range but that didn’t hear the station as recently. “The RX only IGate use case has never been foreseen, and there is no way for APRS-IS to detect that and IGate is not TX capable.  Do not be a jerk, do not run a RX only IGate.” (F4FXL 2019).

While this theory makes sense, it’s luckily not true. Hessu, OH7LZB is one of the authors of the APRSC server software running on the APRS-IS servers, and is the owner of one of the popular APRS tracking websites Hessu talked on this issue stating, “The APRS-IS servers (both javaprssrvr and aprsc) send the messages to all IGates which heard the station recently, so an RX-only IGate won’t cause a problem. The server maintains a list of recently heard callsigns independently for all IGate clients on filtered connections. There’s a separate list of heard stations for each IGate client. When it has a message to pass on, it will look at the heard list for each IGate client, and send it to all IGates which have heard the recipient recently. Not the latest one.

Hessu cited the open-source firmware for the servers, found on Github, and even shared an automatic test that confirms this behavior. Hessu later continued, “I suppose the real problem is that a user, seeing one-way beaconing to the APRS-IS works, would expect two-way messaging to work too. And when it doesn’t work, there’s only a timeout, no immediate feedback saying sorry, this won’t work now,’ which is what a sensible system would do today. Even in that case, an RX-only IGate is better than nothing, and it’s much easier to set up. Technically, financially and licensing-wise in many places. So, I wouldn’t be so harsh against them.”

Code Showing the APRS Servers send packets to all stations that recently heard the recipient.

So is an RX Only IGate Right for You?

RX only IGates are not harmful to the network at all. As Hessu says, “An RX-only IGate is better than nothing.” However, before you decide to put up an RX-only IGate, it’s worth recognizing the potential a full TX / RX IGate has. Full IGates are the bread-and-butter of the APRS system and are what makes them so powerful. The best setup is a full IGate with standard digipeaters nearby to get messages to said IGate from further away. If you can manage to set up a full IGate, do just that! However, if you’re currently unable to support TXing from your APRS station, an RX only IGate is better than nothing and can be a lot of fun!

If you want to make your own receive-only iGate, check out his project by John WB2OSZ, the author of Direwolf (a popular and versatile packet TNC software) has this project using a raspberry pi and an RTL-SDR:

No responses yet

Leave a Reply

Your email address will not be published. Required fields are marked *