APRS iGate for Parachute Mobile

At Parachute mobile we like to tinker with things. One of the projects I have worked on is an APRS iGate.

Parachute mobile is a group of people who combine their passion of ham radio and of skydiving. For us, POTA doesn't mean park on the air but Parachute on the air. Our skydivers carry a bunch of radio equipment going from VHF, HF radios, cameras with their transmission equipment, and APRS trackers. At ground control, we get jump data that depends on the trackers the jumpers carry with them. We get latitude and longitude coordinates, altitude, temperature and even SpO2 levels of the skydiver.

The picture on the right shows a team member checking Marc's radio and video equipment before a jump.

APRS (Automatic Packet Reporting System) is a radio based digital communications system for local, regional, or long-distance for near real-time exchange of messages, bulletins, GPS, weather or biometric information. To receive these data we have an APRS iGate at ground control. This iGate is in charge of receiving and decoding the radio packet before sending that information to the internet and to all the mapping software and screens we have at ground control.

For security reasons, we want to want to track our skydivers (altitude and coordinates) with a high level of accuracy. This is why our trackers are sending a packet of data every 10 to 15 seconds. This would generate a high level of traffic to the public APRS infrastructure, which other people might rely upon. This is why we have built our own APRS iGate and why we use our own frequency.

Our iGate is built using a Raspberry Pi, the TNC1 software direwolf, a GPS board, and an inexpensive SDR[^]2 dongle. The iGate is tethered to a cell phone to send the collected data over the internet. People around the world can follow the jumps on the website aprs.fi by typing the call sign of the skydiver. On ground control, we use the open source software xastir to display all the information about the jumpers on a big screen.

iGate cost:

These are reference prices found on Amazon. I am sure you can use different items with better prices.

Part Price
Raspberry Pi B $35.68
GPS NEO-6M 51 microcontroller STM32 $10.40
RTL_SDR $21.95
IP65 Electrical Box 160mm x 110mm x 90mm $11.99
Grand Total $83.02

Direwolf configuration

The configuration is relatively simple. Every 30 minutes we beacon our position determined by the local GPS. Every packet received are sent to the igate server noam.aprs2.net. The hostname noam stand for north America.

#############################################################
#                                                           #
#      Parachute mobile DireWolf configurationf             #
#                                                           #
#                     Fred (W6BSD)                          #
#                                                           #
#############################################################

# LOGDIR /tmp/aprslogs

ADEVICE  stdin null
CHANNEL 0

MYCALL W6BSD-5
MODEM 1200

AGWPORT 8000
KISSPORT 8001

# FIX_BITS 1

IGSERVER noam.aprs2.net
IGLOGIN W6BSD-5 9999
IGTXLIMIT 6 10

GPSD localhost
TBEACON sendto=IG delay=0:30 every=30:00 symbol="igate" overlay=S comment="Direwolf 1.5 SDR iGate ParachuteMobile.com"

# end

The following command will run direwolf using the SDR as input stream.

$ rtl_fm -f 144.33M - | /usr/local/bin/direwolf -t 0 -n 1 -r 24000 -b 16 -c direwolf.conf -

I have had good results running direwolf with the SDR default sampling rate of 24000. I have tried higher sampling. It didn't improve the decoding but the CPU t few ºC hotter.

Following Mark on aprs.fi

On mission days, ham operators can follow the jumps on the site aprs.fi.


  1. Terminal Node Controller 

  2. Software Defined Radio 


Comments !