RTL-SDR for AIS on SDRangel & OpenCPN


AIS Automatic Identification System for Ships is a traffic system that uses VHF transponders on vessels to periodically send out location information. AIS uses two VHF marine channels 87B (161.975 MHz) and 88B (162.025 MHz). Transmission is by 9.6Kbps GMSK modulation (Ref.1). AIS uses navigational information from external on board GPS, Inertial Navigation and Ship Control systems. AIS has several different classes of equipment such as Class A, Class B, Base Station and Aids to Navigation. Depending on the Class, different types of information are transmitted when the ship is in port, or underway.

I first examined AIS using the RTL-SDR with MULTIPSK as a tuner/decoder with display on Google Earth (requires an internet connection) (Ref.2). I then examined AIS using the RTL-SDR with the aisdeco2 decoder on OpenCPN (Ref.3). This allowed use without an internet connection. I also looked at AIS using the RTL-SDR on OpenPlotter/OpenCPN (Ref.4). Recently I started using SDRangel which is a very powerful SDR platform that can be used with the RTL-SDR (developed by Edouard Griffiths F4EXB). It has a large set of decoder modules, with AIS being one of them. In this post we will look at the AIS decoder and display on OpenCPN (Ref.5). SDRangel 6.18.1 is installed on a Windows 10 laptop (Ref.6). The GitHub quick start guide is excellent to get the software installed and running (Ref.7).


Fig.1 SDRangel AIS Configuration
Fig.2 SDRangel Overall AIS Menu Configuration
Fig.3 OpenCPN Connections Configuration for SDRangel AIS
Fig.4 OpenCPN AIS Capture Toronto Harbour from Strarbucks

In order to receive 9.6Kbps GMSK packets on SDRangel, the configuration in Figure 1 is used. The “Sampling Device” is set to RTL-SDR[0] and tuned half way between marine CH87B and 88B at 162MHz. Two “Channels” units are added: the first AIS Demodulator is set to del_freq = +25KHz and the second AIS Demodulator to del_freq = -25KHz. The RTL-SDR “Sampling Device” is set to 2.4Msps and the decimation to 16 to show the pulses on the two channels clearly. It is important to set the ppm accurately, in my case ppm = -1. Decoded AIS messages show up in each channel in the Received Messages window. In order to display on OpenCPN, tick off the UDP box and setup identical Port parameters: on OpenCPN.

Fig.5 YouTube Video RTL-SDR for AIS on SDRangel & OpenCPN
YouTube Channel
YouTube Channel


#1. – “AIS GMSK Modulator – Scicos Simulation”

#2 – “RTL-SDR for AIS”

#3. – “RTL-SDR for AIS”

#4. “OpenPlotter – AIS Connection”

#5. – “OpenCPN”

#6. – “SDRangel”

#7. – “SDRangel Quick Start Guide”

By Jeremy Clark

Jeremy Clark is a Senior Telecommunications Engineer and Advanced Amateur Radio Operator VE3PKC. He is the author of E-Books on Telecommunications, Navigation & Electronics.