Skip to content

rtl-ais

Receives both AIS channels at once from one cheap dongle

What it does

Tunes an RTL-SDR between the two marine AIS channels -- 161.975 and 162.025 MHz -- demodulates both simultaneously from one capture, decodes the packets and emits NMEA sentences over UDP for a chart plotter or a mapping program to consume.

Why you would want it

AIS is the one class of traffic where a cheap dongle and a wire outperform expectations dramatically: ships transmit constantly, the signals are strong, and the result is a live map of everything moving within VHF range. Receiving both channels at once matters because vessels alternate between them, and a single-channel receiver silently misses half the traffic.

Before it will work

An RTL-SDR and an antenna for marine VHF -- a quarter wave is about 46 cm. Something to consume the NMEA output: OpenCPN, a plotter, or gnuais. Being near water, which is the real constraint.

How it installs

  • apt: rtl-ais
  • Present on Debian 13, Ubuntu 26.04, Kali and Parrot; absent on Linux Mint 22.3 (measured 2026-08-28).

Known problems

Frequency error in a cheap dongle matters here: the two channels are 50 kHz apart and an uncorrected PPM offset puts one or both outside the filter, producing a decode rate that looks like poor propagation. Determine the dongle's PPM correction first. AIS positions are public safety broadcasts; republishing them to an aggregator is a choice with consequences for the people on those vessels.

Keeping it current

  • probe: apt policy
  • strategy: apt_upgrade

Where to get help with the software itself

Daniel Giardini. GitHub issues at the URL above.

Source: catalog/packages/rtl-ais.yaml