Digital packet radio encoder/decoder

APRS# is an encoder/decoder for the Automatic Packet Reporting System (APRS) digital packet radio protocol used by amateur radio operators around the world to exchange short messages, statuses, and locations.

Collaborators: Edwin Mukhebi

Technologies: C#, .NET Core, GitHub Actions, TCP Networking, Packet Radio, Amateur Radio

What is APRS?

The Automatic Packet Reporting System (APRS) is both a digital packet radio protocol and the radio communication network used to transmit those messages. Both the network and the protocol are used by amateur (ham) radio operators around the world to exchange messages, weather reports, locations, and more.

The APRS network is an ad-hoc, multihop, mesh network made up of radio transceivers ranging from repeating stations on mountain tops to personal handheld transmitters. It is also backed by a network of “internet gateway” stations allowing internet-connected devices to send and receive messages from the radio waves.

APRS packets are encoded digital radio transmissions. The packets carry an alphanumeric representation of information such as GPS location, weather readings, personal messages, identifying information, and more. These packets are then AX.25 encoded, frequency modulated, and usually transmitted on VHF amateur band radio frequencies.

What is APRS#?

Currently under development, APRS# aims to create a modern set of tools for the APRS protocol. This includes a few primary objectives:

Eventually, additional goals such as graphical user interfaces, web services, or more may be added to the project.

The project is cross-platform and runs on the open source .NET Core framework.

APRS# as a teaching tool

APRS# was submitted as a project for InternLink 2020, a volunteer effort to replace internship and job opportunities for college students and recent graduates who lost opportunities due to the global COVID-19 pandemic. Industry mentors with open source projects were paired with student or recent-graudate mentees to provide hands-on instruction in industry software engineering practices.

Through this program, Edwin Mukhebi was matched with the APRS# project. Since he joined in 2020, he has contributed much of the initial code for the console application and interfacing with the APRS-IS backend.


Open Source and Personal Projects


Secure IoT platform

A decentralized IoT security platform with dynamic and human-readible access control language.

Read More


Digital packet radio encoder/decoder

A C# implementation of the APRS digital packet radio protocol used by amatuer radio operators.

Read More