AIS - SDR RTLAIS
Added: 2026-10
Kismet can use the cheap rtl-sdr software defined radio to receive AIS from ships, base stations, aids to navigation, and search and rescue aircraft.
The SDR RTLAIS source can autodetect rtl-sdr devices automatically, and can be manually specified with type=rtlais:
source=rtlais-0:type=rtlais
AIS
AIS, the Automatic Identification System, is the international standard maritime identification and tracking system. AIS transmitters broadcast their identity (the MMSI), location, speed, course and heading, and, for vessels, the ship name, callsign, type, dimensions, destination and ETA.
AIS uses two channels, 161.975MHz (channel A) and 162.025MHz (channel B). The SDR RTLAIS source tunes between them, to 162MHz, and receives both channels at once, so it doesn’t hop.
Kismet tracks each AIS station as a device, by its MMSI:
- Class A and class B vessels, with position, speed, course, heading, rate of turn, navigation status, and the static and voyage data the vessel sends (name, callsign, IMO number, ship type, dimensions, draught, destination, ETA)
- Base stations, with the UTC time they report
- Aids to navigation (AtoN), including virtual aids and aids off position
- Search and rescue aircraft, with altitude
- AIS-SART, man-overboard, and EPIRB emergency beacons
The country of each station is derived from the maritime identification digits of its MMSI. Positions reported by AIS stations are used as the device location.
AIS tools
Received AIS messages are available as NMEA AIVDM sentences over a websocket, for use with OpenCPN and other AIS tools. See the AIS API for details.
Supported hardware
The RTL-SDR is a repurposed digital TV tuner which functions as an extremely cheap SDR, or software defined radio. A SDR is required for tuning to the AIS frequencies and capturing raw radio sample data.
The Kismet implementation of AIS decoding is tightly coupled to the RTL-SDR hardware, and will not currently work with other SDR hardware.
AIS is a VHF signal; an antenna tuned for 162MHz, mounted as high as possible, makes a large difference to how far away stations can be received.
SDR RTLAIS interfaces
Kismet identifies RTL-SDR hardware by either the serial number (if any) or by the radio position; for example:
The first RTL-SDR radio in the system, to be used for rtlais:
source=rtlais-0
A specific RTL-SDR radio (if serial numbers are available):
source=rtlais-324452324332
Not all RTL-SDR hardware populates the serial number field, and some hardware ships with a default serial number of 0. Serial numbers can be found using the standard rtlsdr tools, like rtl_test.
Multiple RTL-SDR devices
Every datasource in Kismet must have a unique identifier, the source UUID. Kismet calculates this using the serial number of the RTL-SDR device.
When using multiple RTL-SDR radios which don’t report unique serial numbers, either assign each one a serial number with the rtl_eeprom tool, or set the uuid=... parameter on each Kismet source definition.
SDR RTLAIS source parameters
Naming and description options
All data sources accept the common naming and description options.
Radio control options
gain={ value }
ppm={ error_value }
biast={ true } / { false }
biastgpio={ gpio }
uuid={ uuid }