Also known as: Dire Wolf, direwolf
Dire Wolf is an open-source software TNC — a terminal node controller implemented entirely in software — that modulates and demodulates AX.25 and APRS packet radio using a computer’s sound card or an SDR, replacing what used to require a dedicated hardware modem.1 It handles the modem and link layer and presents standard KISS and AGWPE interfaces so applications like APRS clients, mail programs, and digipeaters can send and receive frames over the radio.
How it works
On receive, Dire Wolf takes audio from the radio — most commonly the classic AFSK 1200-baud (Bell 202) tones used by VHF APRS, but also 300-baud HF, 9600-baud GFSK, and other schemes — and runs a software demodulator to recover the bitstream. It performs NRZI decoding and HDLC framing, finds the flag bytes that bound each AX.25 frame, checks the frame CRC, and extracts the source/destination callsigns, digipeater path, and payload. A notable strength is that Dire Wolf runs multiple decoders per channel at slightly different settings and picks the best result, which markedly improves copy of weak or distorted packets versus a single hardware modem.
On transmit it does the reverse: it builds the AX.25 frame, applies HDLC framing and bit stuffing, and generates the modulated audio, keying the transmitter via PTT (serial, GPIO, or VOX). To applications it looks like a TNC through the KISS protocol (over serial or TCP) and the AGWPE network interface, so existing packet software needs no special support. Beyond a plain modem, Dire Wolf can act as an APRS digipeater (relaying packets) and an iGate (bridging RF packets to the APRS Internet System), and it supports sound cards or IQ from SDRs as its audio source.
Relevance to SDR
Dire Wolf is the de-facto software modem for amateur packet and APRS, valued for its strong weak-signal decoding and for eliminating dedicated TNC hardware. With an SDR or even a simple receiver feeding audio, it turns a computer into a full APRS station, digipeater, or iGate, and it serves as the packet engine behind many Winlink and AX.25 networking setups. It is a link- and modem-layer tool: the SDR handles RF tuning and demodulation to audio, and Dire Wolf takes it from there to frames.
GopherTrunk is unrelated in code and aims at a different part of the radio world. GopherTrunk is a pure-Go trunked-radio and digital-voice scanner (P25, DMR, NXDN, TETRA, and more) that ingests IQ and follows control channels; it is not a packet TNC and does not implement AX.25/APRS. The connection is thematic — both are software replacements for what used to need dedicated hardware, and both can run on the same class of SDR front end — but they solve different problems. For AX.25/APRS packet work, Dire Wolf is the tool; GopherTrunk covers the trunked-voice side instead.
Sources
-
Dire Wolf — the source repository and user guide, documenting the AFSK/other modems, AX.25/HDLC framing, KISS/AGWPE interfaces, and digipeater/iGate functions; background on TNCs is in the terminal node controller Wikipedia article. ↩