Linux and BSD software

Free, scriptable, and the natural home of Raspberry Pi stations.

Linux runs most of the important amateur software natively, and it is what nearly every embedded and remote station runs. FreeBSD covers a smaller but real subset through its ports tree.

Distributions and ready-made images

  • Any mainstream distribution works; Debian and Ubuntu have the largest packaged selection.
  • Raspberry Pi OS — the standard for a portable digital-modes box, an
  • APRS igate, a remote receiver or an AllStar node.

  • DragonOS — Ubuntu preloaded with SDR and signal-analysis tools.
  • HamPi and Build-a-Pi — Raspberry Pi images with the ham stack already installed.

Logging

  • CQRLOG — the mature Linux general logger (MySQL/MariaDB backed, LoTW, cluster).
  • Klog — Qt, cross-platform, straightforward.
  • TLF — terminal contest logger for CW, SSB and digital, in the N1MM tradition.
  • Xlog, HAMRS — lighter alternatives.

Digital modes

  • WSJT-X, JTDX, fldigi, JS8Call, QSSTV — all packaged in most distributions.
  • Pat — the Go-based Winlink client; pairs with
  • ARDOP, Direwolf packet, or VARA under Wine.

  • Direwolf — the software TNC. It replaces a hardware TNC for packet, APRS and igates, and it
  • is the reason a $40 Pi can run a full APRS station.

Programming and control

  • CHIRP — packaged, or run from a Python virtual environment for the newest builds.
  • Hamlib / rigctld — native home of the project; nearly everything speaks to it.
  • Grig, flrig — graphical rig control front ends.

SDR

  • GQRX, SDR++, SDRangel, CubicSDR, welle.io (DAB).
  • GNU Radio and gr-satellites — the reference toolkit for building your own receivers.
  • rtl_433, dump1090, multimon-ng — decoding utilities worth knowing.

FreeBSD and OpenBSD

The ports tree carries hamlib, fldigi, wsjtx, gnuradio, gqrx, direwolf, xlog and chirp; audio goes through OSS rather than ALSA/PulseAudio, so set dev.pcm defaults and use the device names your program expects. It is a good fit for a headless igate or remote receiver, and a poor one if you need a specific GUI title that only ships as a Debian package.

Practical notes

  • Serial permissions. Add yourself to the dialout group (uucp on BSD) or every program will
  • report "cannot open /dev/ttyUSB0".

  • Audio. PipeWire and PulseAudio both work; pick the radio's USB codec explicitly in each
  • program rather than "default", and set 48 kHz.

  • Time. Install chrony and confirm it is actually syncing before blaming decodes. On a Pi
  • without a network, add a GPS or an RTC module.

  • Flatpak builds of WSJT-X are sandboxed — grant device and audio access or use the distribution
  • package.

Last updated Aug 27, 2026. Page history · Sign in to edit