/harbour-aprstx

An APRS transmitter for SailfishOS based phones

Primary LanguageC++GNU General Public License v3.0GPL-3.0

APRSTX / harbour-aprstx

Introduction

This is a simple APRS transmitter for Sailfish OS-based devices which can be used in amateur or CB radio.

APRSTX generates an APRS packet, modulates it using AFSK1200 and plays the resulting waveform on the device’s audio output. The audio signal can be decoded by a packet radio software receiver such as direwolf (see below for a test command).

Operation

To use it on the air, connect your phone’s headphone jack to the audio input of your radio, which has to be able to transmit narrow band FM.

Please be aware that the audio interface to the radio is different for each type, so I cannot give a generic description of that. The simplest possible interface just connects the phone’s output to the radio’s input and lets the radio’s VOX feature decide when to transmit. However, the radio-internal VOX circuits are generally very slow as they are optimized for speech transmission, which causes much longer transmission times than necessary. If you can, build a custom interface with a fast VOX circuit.

Also be aware that the app currently does not detect if someone else is already transmitting. Please set the minimum transmission intervals reasonably high (30s minimum) to avoid collisions.

If you want to transmit on amateur radio bands, you need an amateur radio license.

Disclaimer

I am not responsible for any damage caused by connecting your phone to a radio or by using this app. You are doing so at your own risk.

Test

If you want to test-decode the packets generated by this app, run the following on your Linux PC (with PulseAudio) and record the app’s audio with a microphone:

parecord --raw --rate 48000 --format=s16ne --channels=1 | direwolf -t 0 -r 48000 -n 1 -b 16 -B 1200 -

The decoded packet should be displayed on the terminal.