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.