Setting up a Raspberry Pi Based AIS Receiver with an RTL-SDR

Over on YouTube user Tobias Härling has uploaded a video showing how he used a Raspberry Pi and RTL-SDR dongle to set up an AIS receiver. AIS stands for Automatic Identification System and is a radio system similar to ADS-B which allows you to create a radar-like system for boats. For Windows we have a tutorial on AIS reception here.

In his setup he uses rtl_ais and the kplex software and shows how to install everything from scratch. He also shows how to set the system up so that decoding automatically starts up and begins outputing NMEA data through the network when the Raspberry Pi is powered on. This way an a device like an iPad could be used to run OpenCPN to view the plotted ships.

$50 Raspberry Pi AIS-Receiver - How to

Notify of

Inline Feedbacks
View all comments

None of this works in real life.
The compile or “make” command returns a code 2 in all situations.
Remove this stub please, it’s not contributing to the SDR community!


If you see something like “make: *** all Error 2 (I modified this slightly to stop this website from mangling the exact output)”, that is not the actual error message, somewhere above that should be the actual “Error 1” or reason for the “failed” build, 9 out of 10 times is is a missing prerequisite library, header file, or piece of software that was not installed and is required for the build to proceed.

Do a “make clean” and “make” and then post a link here to the FULL output text from the failed build somewhere like / / / … because sites like this will mangle all the output, by trying to interpreting it as html, but if it is available somewhere unmangled someone can help you.

What your post says is that your skill level is too low to attempt what you are attempting “and” something is not listed in the documentation as a required prerequisite, that is assumed to be there and may not be on a default install every single revision of every flavour of supported operating system. It is not the developers fault, it is actually difficult to support every possible revision of every possible flavour of OS for free.

Or you could probably just search for that one error 1/fail line in your search engine of choice and help yourself.


Don’t have a real AIS signal at your home? no problem, you can use Quark AIS simulation tool.
Just connect a VHF antenna with it and you get a real AIS signal withing 10 meters distance. Good luck!


are there any adaptations necessary for RPI 3 and/or aplay?? From a HW & compilatiojn point of view, everything looks OK, but I do not receive any AIS signals, nor does the command ./rtl_ais -g50 -l94.9M -r95.1M -A | aplay -traw -r48k -v produce any output rather than noise, while the corresponding rtl_fm -f 103.4e6 -M wbfm -s 200000 -r 48000 – | aplay -r 48k -f S16_LE gives me fine radio audio.

Ty Dye

Hey Hans,
Did you ever figure out how to make it work???


Hi, can you tell me how to relay the decoded signal (ASCII string) to a a certein ip address and port.

Where can we buy a good dongle?



Here is a tutorial showing a similar setup to stream AIS messages via UDP to (or just a local computer), using a Raspberry Pi 3 Model B running rtl_ais:

Mike McRoberts

I have installed RTL-AIS and ran it. Seems to start jut fine however the output I am getting in the console is not NMEA messages it is just garbled output. Anyone have any idea why this might be?




This video does not show how to use the Kalibrate program to calibrate the PPM ofset of your SDR dongle. Its from 2013, and other videos from youtube is taken down.
How can I find the ofset easy?



Just tune into a known frequency radio station. ie. select the frequency. (eg. local tower at nearby airport) Then run sdrsharp and go to the calibrate part and change the offset PPM up or down with the arrows whilst observing which way the center cursor is moving on the display. Get the cursor in the middle of the selected frequency and you can read what the offset is. Good luck, and may the force be with you always!


with the same rtlstick?


Should be possible from model B and onwards. Both CPU and USB-bandwise.


is it possible to use AIS and ADSB at the same time with my raspberry pi?