Tagged: automatic identification system

ESAR – Extraordinarily Simple AIS Receiver written in C

Thank you to Richard Gosiorovsky for submitting his latest SDR project called ESAR (Extraordinarily Simple AIS Receiver). 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.

Richards code comes as raw C code, so you will need some knowledge on C code compiling to use it. Being so simple, the code is also a great resource for learning how to access data from an RTL-SDR, and write a decoder. Richard writes:

[ESAR] takes less then 300 lines of programming code and no additional software is necessary (like SDR# or audio piping).

It was intended mainly as exercise in digital signal processing.

All you need is RTL-SDR dongle with driver and rtl_tcp command. Simple dipole antenna is sufficient. If all this you have just compile C code (in the attachment) using MS Visual Studio.

Before running ESAR run rtl_tcp command with this parameters:

rtl_tcp.exe -f 162e6 -s 300000 -a 127.0.0.1 -p 2345 -g 48.0

It comes with GNU licence so converting output to NMEA format or any graphical output is free choice of other SDR enthusiasts.

Richard has shared the C code file directly with us, and it can be downloaded from our server here.

ESAR Code Screenshot

Demonstrating the New 3D Maps in SDRAngel

In December of last year we posted about a video demonstrating the many features that the SDRAngel software comes standard with. Recently they've added a new feature which are 3D maps that can be used to visualize signal data.

In the latest video demonstration they show these 3D maps projecting NOAA weather satellite images onto a 3D globe and at the same time tracking the NOAA satellites over the globe as it produces imagery. They also show the software visualizing a 3D model of aircraft on the globe, using live ADS-B data to show aircraft maneuvers when taking off, cruising and landing. With multiple SDRs they also show how the visualization can be combined with air traffic voice. Finally they also show marine vessels being visualized via live AIS data. There appear to be a wide range of vessel 3D models implemented.

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.

A Dual Aircraft and Ship Tracking System with RTL-SDR

Over on his blog Ian Renton has posted about his dual plane and ship tracker project that he's titled "Plane/Sailing". The project consists of several elements including one FlightAware Pro Stick and Pimoroni ADS-B antenna for the aircraft tracking, and an RTL-SDR Blog V3 dongle and Diamond X-50 AIS antenna for the ship tracker.

Ian runs each dongle on a seperate Raspberry Pi. For aircraft the dump1090 software is used to decode the data, and it passes that data to multiple aggregator feeders such as FlightAware, FlightRadar24, ADS-B Exchange and OpenSky. For ships he uses rtl_ais which feeds into AIS Dispatcher which in turn feeds multiple marine aggregators such as Marine Traffic, VesselFinder, AIS Hub, Pocket Mariner and Ship Finder.

His system also feeds a personally hosted web front end based on his umid1090 software. umid1090 is a replacement for dump1090's web interface, the main difference being that the map is presented using military symbology. For the "Plane/Sailing" project he also extended umid1090 to be able to read the AIS ship position data from AIS Dispatcher's KML output file, and created a clean dark interface. The result is a slick looking map displaying both the tracked aircraft and ships. Ian's web interface for his system is public, and can be viewed at planesailing.ianrenton.com.

The Plane/Sailing Web Interface (Based of UMID1090)

 

Building a Raspberry Pi Based AIS Receiver with an RTL-SDR, Preamp and Collinear Antenna

Thank you to SARCNET (School Amateur Radio Club Network) for submitting news about their tutorial on building a Raspberry Pi and RTL-SDR based AIS receiver. In their tutorial they show what equipment is required and provide access to a ready to use SD Card image for the Pi that has the AIS software pre-installed and ready go. They also show how to upload data to various online AIS data aggregators like AISHub and MarineTraffic.

AIS stands for Automatic Identification System and is used by ships 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.

The School Amateur Radio Club Network publishes a simple project aimed at promoting the deployment of maritime Automatic Information System (AIS) receiving stations around the world using cheap RTL-SDR dongles and Raspberry Pi computers. The purpose of the project is to improve the existing terrestrial AIS receiving network by encouraging enthusiasts to setup their own AIS receiving stations and to disseminate their local vessel traffic data freely to AIS Servers. This data can then be used by many organisations involved in monitoring and improving the safety and security of shipping.

The SARCNET project, which works on all models of Raspberry Pi, makes building the AIS receiving station simple by providing pictorial construction details with a pre-packaged Raspberry Pi image to download. The free project uses open-source software and a bootable Raspberry Pi image which has been updated to use the latest Raspbian Lite operating system.

One of the attractions of building your own AIS receiving station is that some AIS servers reward you when you freely upload your local vessel tracking data. They publish your station information, showing your station position on a map and your receiving statistics like messages per hour and coverage in nautical miles. Some give you free, premium access to their AIS data, which can be viewed on their mobile apps. Even so, by operating one of these AIS receiving stations, you will have the satisfaction of making the world a safer place.

AIS Received with a Raspberry Pi and RTL-SDR Dongle.
AIS Received with a Raspberry Pi and RTL-SDR Dongle.

A Homemade Boat Computer with RTL-SDR for Weather Fax, NavTex and more

Over on Hackaday we've seen a post about [mgrouch]'s "boat computer" which consists of a Raspberry Pi 4, HDMI display, and a whole slew of sensors and receivers useful for a marine environment including an RTL-SDR.

The built in equipment includes a GNSS receiver, orientation sensors, AIS receiver, 4G and WiFi, lightning EMI sensor and alarm, optional autopilot integration, rudder angle sensor, connections to boat instruments like wind, depth, speed, temperature, barometric and humidity sensors, an Iridium receiver, and finally an RTL-SDR for receiving weather fax, NavTex, satellite weather, AIS, RTL 433, morse code and more. It really is an "all-in-one" device.

His blog post explains in detail how each of the components work in the system, and in particular for the RTL-SDR he shows how you can use the boat computer to receive FM via GQRX, and NavTex via the Java based Frisnit Navtex decoder. Navtex is a marine radio service that transmits at 518 kHz or 490 kHz. It provides text data regarding weather forecasts, weather warnings, navigational information, and urgent maritime safety messages. For his antenna he writes that he uses a 10 kHz - 30 MHz Mini Whip antenna that he purchased on Aliexpress.

mgrouch's Boat Computer with RTL-SDR
mgrouch's Boat Computer with RTL-SDR

RTL-SDR AIS Android App Now with Waterfall Display for Frequency Offset Tuning

Thank you to Christian, author of the RTL-SDR AIS Android App for letting us know that he's updated his app and it now includes a waterfall display for tuning the AIS frequency. Tuning the AIS frequency is not required on higher end RTL-SDR dongles that come with a TCXO (Temperature Compensated Oscillator), but cheaper RTL-SDRs will have significant frequency offsets that will require the offset to be determined after a few minutes of warm up time. The easiest way to do this is with a waterfall display as that allows you to tune the frequency manually.

AIS stands for Automatic Identification System and is used by ships 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.

RTL SDR AIS Driver App PPM

AIS Share App Updated and Magazine Article

Thank you to Christian, programmer of the AIS Share Android App for letting us know about some updates to his AIS Share Android application. AIS Share is a €2 app for Android that allows you to turn an Android device into an AIS receiver together with an RTL-SDR. AIS stands for Automatic Identification System and is used by ships 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.

Recent updates to AIS Share have brought improved AIS reception, and updates allowing it to run on the latest Android version. A new video demonstrating the software was also uploaded to YouTube.

AIS SHARE - Android (RTL-SDR AIS receiver)

The App has also been featured in the February 2019 edition the "Practical Boat Owner" magazine (paid magazine with digital editions). The article discusses using AIS Share and an RTL-SDR to stream data to Boat Beacon, which is a popular chart navigation app. A similar but free tutorial on setting up AIS Share and Boat Beacon can be found here.

An excerpt of the Practical Boat Owner AIS Share RTL-SDR Article.
An excerpt of the Practical Boat Owner AIS Share RTL-SDR Article.