Marine AIS Decoders
AIS-catcher, rtl-ais, OpenCPN — decode ship AIS broadcasts and plot them on charts.
AIS (Automatic Identification System) is the marine equivalent of ADS-B: every ship over 300 GT broadcasts position, course, speed, and identity on 161.975 / 162.025 MHz. With an RTL-SDR and a VHF antenna near the coast, you can paint every ship within ~50 NM onto a chart. Cross-link with SDR Receivers, Aviation Decoders for the parallel ADS-B workflow, and Pi Classic Projects.
Decoders
- ★ AIS-catcher — modern, fast, cross-platform AIS decoder. Reads from RTL-SDR / Airspy / SDRplay / HackRF / SoapySDR / file. Outputs NMEA-0183 / JSON / web UI / database. Built-in web frontend with ship tracking map. GPL. The 2026 default.
- rtl-ais — older RTL-SDR-only AIS decoder; lightweight; outputs NMEA over UDP. Still in active distros. GPLv2.
- gnuais / aisdecoder — older C decoders; obsolete for new installs.
- AISHub Dispatcher — closed; for forwarding AIS streams to AISHub network.
Chart plotters / map UIs
- ★ OpenCPN — open-source chart plotter (the marine equivalent of Foreflight / Navionics for non-commercial use). Reads AIS via NMEA-0183 / NMEA-2000 / TCP. Plugin ecosystem — AISradar plugin, OcpnChartTool, GRIB weather plugin. Cross-platform. GPLv2.
- ★ AIS-catcher built-in web UI — the simplest "open browser, see ships" path; no OpenCPN install needed.
- MarineTraffic web client — closed cloud; aggregates feeders.
- VesselFinder web client — same niche as MarineTraffic.
Feeder networks
- ★ MarineTraffic — the dominant aggregator; feed your station and get a free premium account. Closed feeder ('feeder app' or via direct NMEA forwarding from AIS-catcher).
- AISHub — open-philosophy network; share ⇌ get aggregated data.
- VesselFinder — accepts feeders; closed.
- Sailwx / shiptrak — older / sunset.
- AISStream.io — newer 2025-launched API-first AIS aggregator; pay per query.
Hardware
- ★ RTL-SDR Blog v4 — works fine; but you need a real VHF marine-band antenna (162 MHz, λ/4 ≈ 18 inches). The bundled stub antenna is useless for AIS.
- Dual-channel AIS receivers (Quark-Elec QK-A026, dAISy 2+, Comar SLR350N) — purpose-built receivers that decode both A (161.975) and B (162.025) channels simultaneously without an SDR. ~$150–250. The NMEA over USB variants drop straight into OpenCPN. Better sensitivity than RTL-SDR for AIS specifically.
- Marine VHF antenna — Shakespeare 5215 / Metz Manta-6 / boat-mounted 4 ft VHF. Higher = much more range.
- Class A vs Class B ships — Class A (cargo / tanker) transmits at 12.5 W, Class B (yacht) at 2 W. Range depends entirely on antenna height for both.
Practical guidance
- Antenna at the coast. AIS is line-of-sight; 50 NM is realistic from a hilltop or coastal high-rise. Inland is hopeless.
- Filter the FM band. A ~150 MHz high-pass or AIS notch filter ahead of the SDR helps in cities.
- Channel A and Channel B together. AIS-catcher decodes both at once from a single RTL-SDR; rtl-ais is also dual-channel. Don't tune one channel only.
- MMSI lookups. AIS messages identify ships by 9-digit MMSI; ITU's MMSI database is public. AIS-catcher's web UI cross-references it.
- Class A vs Class B reporting rate. Class A ships report position every 2–10 seconds; Class B reports every 30 seconds. Class B will look "jumpy" on the map; that's normal.
- Boat use: aboard, you typically want a dedicated dAISy 2+ or Quark QK-A026 wired into OpenCPN over USB; an SDR is overkill and a power hog.
License / pricing notes
- AIS-catcher / rtl-ais / OpenCPN — all FOSS (GPL).
- MarineTraffic / VesselFinder — closed networks; free feeder accounts in exchange for sharing.
- AISHub — open philosophy; data shared back as bulk feeds.
- dAISy 2+ / Quark-Elec / Comar — closed-firmware hardware receivers; NMEA output is open standard so your data is portable.
- AISStream.io — paid API for live AIS data; useful if you don't have antenna access.
Pick this if…
- Default 2026 land-station AIS: AIS-catcher + RTL-SDR Blog v4 + a marine VHF antenna on the roof.
- Onboard yacht AIS: dAISy 2+ or Quark QK-A026, into OpenCPN.
- Default chart plotter: OpenCPN.
- Just want a webpage with ships: AIS-catcher's built-in web UI.
- Feed a public network: MarineTraffic (best coverage) or AISHub (most open).
- No antenna access, just want data: AISStream.io API.