WB4KOG-3 Upgraded to IGate, aprsc Running on Docker and Kubernetes

Imagine discovering your tracker station on an APRS map for the first time. APRS is a frequent early project for new hams, many of whom first see their radio traffic this way.

A 24-hour snapshot of APRS traffic recently as observed in the APRSIS (from APRS.fi).

For the uninitiated, APRS stands for Automatic Position Reporting System and is a "Ham Radio of Things" system. As the name suggests, the most common use case is for position reporting of things like vehicles and infrastructure (think repeaters). APRS is also used for two-way messaging, weather reporting, and even interacting with other systems like e-mail and SMS. APRS has repeaters to help others hear lower performance stations; on APRS, these are called digipeaters, or "digis" for short.

In the mid-south today, there is a robust infrastructure for APRS. Tri-State Repeater Association operates six digipeaters, and Delta Amateur Radio Club operates one. There are a ton of individually-operated digipeaters and IGates, too, that come and go. Coverage is generally excellent, though there's always more work to be done. HamWAN Memphis Metro has recently been working to bring new APRS capabilities to the area, building on the existing infrastructure to support new use cases.

A highly-capable, bi-directional IGate for Memphis

WB4KOG-3 is a long-standing digipeater operated by Tri-State Repeater Association in the Memphis Medical District. MemHamWAN's midtown site happens to be in the same place. Both organizations have teamed up to upgrade this Digipeater experimentally to be an IGate.

WB4KOG-3, showing the Kantronics PC3, Yaesu FT-2500M, and Rasberry Pi 3B+ with TNC-Pi9K6.

WB4KOG-3's new setup consists of a Yaesu FT-2500M, a Raspberry Pi 3B+, and a TNC-Pi9k6. The tried-and-true Kantronics Packet Communicator 3 remains a plug-and-play backup option while the experiment continues.

On the software side, the digi is running APRX, chosen primarily due to its known performance, configuration simplicity, and active community of users. While the installation is simple, to help make configuration transparent and continue our pattern of configuration-as-code, an Ansible role was created for deploying APRX on Raspberry PI devices. This is how the device is configured and managed today.

As this is an experiment, we need to measure performance of the system. Luckily for us, APRX emits a log file with all of the RF history (including the APRSIS traffic). Another Ansible role was created to scrape this log, format the data, and make it available for our monitoring system to access (feel free to look around).

APRSIS on HamWAN

MemHamWAN now has its own APRSIS server running and available for use at aprs.memhamwan.net. With this server, any APRS services both on and off network can connect to have a regional server available to them. Our sibling organizations PSDR and Mi6WAN have similar setups on their networks.

This allows on-network services to make use of APRS without having to duplicate internet gateway traffic. It also adds an element of resiliency to the network in the event of a gateway outage, where devices on network will still be able to get APRS traffic over IP. This paves the way for future on-network applications utilizing APRS, like APRS Track Direct.

This application is deployed to the "MemHamWAN Cloud" in our durian cluster currently.

Running aprsc in Docker and Kubernetes

aprsc is the modern backbone software for APRS, and it is a fantastic piece of software suiting traditional deployments. There are a few examples of unmaintained attempts at bringing this to containers, but none for deploying on Kubernetes or actively being maintained. While deploying this software in this way may seem unnecessarily complex to some, for others, it may be an exciting option to permit rapid deployment and easy management.

As part of this recent focus on APRS, Ryan Turner, K0RET, has developed a Docker image and Helm chart for deploying aprsc using these technologies. This is available today here. The same repository contains the helmfile-based deployment configuration for aprs.memhamwan.net as a reference. It is monitored using Prometheus by scraping the aprsc stats endpoint (feel free to look around).

What's next

With a bi-directional APRS IGate and APRSIS server on MemHamWAN now, the system has another level of resiliency to offer users. If you've been interested in connecting to the network, exploring the tech, or working on your radio-inspired project, join us on our community Discord chat server.

APRS is a registered trademark of APRS Software. This year the creator of APRS Bob Bruninga, WB4APR, passed away.