AIS-Catcher: A Dual Band Multiplatform AIS Receiver for RTL-SDR and Airspy HF+ with Multiple Decoding Models

Thank you to Jasper for writing in and letting us know about the release of his new open source software called "AIS-Catcher". AIS-Catcher is a MIT licensed dual band AIS receiver for Linux, Windows and Raspberry Pi. It is compatible with RTL-SDR dongles and the Airspy HF+.

AIS stands for Automatic Identification System and is used by marine vessels to broadcast their GPS locations in order to help avoid collisions and aide with rescues. An RTL-SDR with the right software can be used to receive and decode these signals, and plot ship positions on a map.

Jasper notes that his software was intended to be a platform for him to experiment with different receiving model algorithms. On the GitHub readme he explains how he's experimented with a coherent demodulation model that estimates the phase offset, a non-coherent model which is similar to what most existing decoders use, a modified non-coherent model with aggressive PLL, and an FM discriminator model which assumes the input is the output of an FM discriminator.

The readme goes on to show some comparison results indicating that the coherent model is the best although it uses 20% more computation time. He also compares AIS-Catcher against some other AIS decoders like AISRec and rtl-ais, showing that AIS-Catcher appears to be comparable or better than AISRec, which is one of the most sensitive decoders available for SDR dongles.

A Windows binary is provided on the releases page and compilation instructions for Linux are provided on the Github Readme.

Some results from AIS-Catcher. Different algorithms and different software compared.
Notify of

Inline Feedbacks
View all comments
Mark Stronge

I compared AIS Catcher and AISRecFull. I can’t get AIS Catcher to display anything in OpenCPN while AISRecFull works fine. I checked the ports etc. and have setup 2 separate inputs on opencpn so I don’t have to keep changing them.

Ryan Sprott

Really impressed with the performance of this software! I can attest that it decodes far more efficiently than rtl_ais, which itself is light years better than AISDeco2. This appears to be the best AIS decoder for Linux at the moment.


The AIS protocol operates on frequencies 161.975 MHz (channel 87B) and 162.025 MHz (88B), so logically it could only be dual channel. I suspect the title of the article was created while wool gathering or counting sheep should have been the higher priority.


Dual band or dual channel?