A reader of our blog, EBC81, has written in to let us know about a new RTL-SDR based AIS decoder that he has written for the Android OS. AIS stands for Automatic Identification System and is used by ships to broadcast their GPS locations, to help avoid collisions and aid 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.
EBC81’s program is called rtl_ais_android and can be downloaded from this GitHub link. It decodes the AIS data into NMEA messages, which can then be sent via UDP to mapping programs in Android or a program like OpenCPN on your PC. To use the app you will need a USB OTG cable to connect your Android device to the RTL-SDR.
In the future EBC81 hopes to create a second app which will display the ship positions on a map.
Inmarsat is a communications service provider with several geostationary satellites in orbit. They provide services such as satellite phone communications, broadband internet, and short text and data messaging services. Geostationary means that the satellites are in a fixed position in the sky and do not move. From almost any point on earth at least one Inmarsat satellite should be receivable.
Inmarsat transmits in the L-band at around 1.5 GHz. With an RTL-SDR dongle, a cheap $10 modified GPS antenna or 1-2 LNA's and a patch, dish or helix antenna you can listen to these Inmarsat signals, and in particular decode one channel known as STD-C NCS. This channel is mainly used by vessels at sea and contains Enhanced Group Call (EGC) messages which contain information such as search and rescue (SAR) and coast guard messages as well as news, weather and incident reports. More information about L band reception is available at UHF-Satcoms page. See the end of this post for a tutorial on modifying a GPS antenna for Inmarsat reception.
Some examples of the EGC messages you can receive on the STD-C NCS channel are shown below:
Military Operations: Live Firing Warning
STRATOS CSAT 4-AUG-2015 03:21:25 436322
SECURITE
FM: RCC NEW ZEALAND 040300 UTC AUG 15
COASTAL NAVIGATION WARNING 151/15
AREA COLVILLE, PLENTY
CUVIER ISLAND (REPUNGA ISLAND), BAY OF PLENTY
1. LIVE FIRING 060300 UTC TO 060500 UTC AUG 15 IN DANGER AREA NZM204.
ANNUAL NEW ZEALAND NOTICES TO MARINERS NUMBER 5 REFERS.
2. CANCEL THIS MESSAGE 060600 UTC AUG 15
NNNN
Armed Robbery / Pirate Warning
NAVAREA XI WARNING
NAVAREA XI 0571/15
SINGAPORE STRAIT.
ARMED ROBBERY INFORMATION. 301845Z JUL.
01-04.5N 103-41.8E.
FIVE ROBBERS ARMED WITH LONG KNIVES IN A SMALL UNLIT HIGH SPEED BOAT APPROACHED A BULK CARRIER UNDERWAY. ONE OF THE ROBBERS ATTEMPTED TO BOARD THE SHIP USING A HOOK ATTACHED TO A ROPE. ALERT CREW NOTICED THE ROBBER AND RAISED THE ALARM AND CREW RUSHED TO THE LOCATION. HEARING THE ALARM AND SEEING THE CREW ALERTNESS, THE ROBBERS ABORTED THE ATTEMPTED ATTACK AND MOVED AWAY. INCIDENT REPORTED TO VTIS SINGAPORE. ON ARRIVAL AT SINGAPORE WATERS, THE COAST GUARD BOARDED THE SHIP FOR INVESTIGATION.
VESSELS REQUESTED TO BE CAUTION ADVISED.
Armed Robbery / Pirate Warning
NAVAREA XI WARNING
NAVAREA XI 0553/15
SINGAPORE STRAIT.
ROBBERY INFORMATION. 261810Z JUL.
01-03.6N 103-36.7E.
DUTY ENGINEER ONBOARD AN UNDERWAY PRODUCT TANKER DISCOVERED THREE ROBBERS IN THE ENGINE ROOM NEAR THE INCINERATOR SPACE. THE ROBBER THEIR BOAT. A SEARCH WAS CARRIED OUT. NO ROBBERS FOUND ON BOARD AND NOTHING REPORTED STOLEN. VTIS SINGAPORE INFORMED. COAST GUARD BOARDED THE TANKER FOR INVESTIGATION UPON ARRIVAL AT SINGAPORE PILOT EASTERN BOARDING AREA.VESSELS REQUESTED TO BE CAUTION ADVISED.
CANCEL 0552/15.
Submarine Cable Repair Warning
NAVAREA XI WARNING
NAVAREA XI 0569/15
NORTH PACIFIC.
SUBMARINE CABLE REPAIRING WORKS BY
C/V ILE DE SEIN. 05 TO 20 AUG.
IN VICINITY OF LINE BETWEEN
A. 21-37.3N 156-11.5W AND 25-03.6N 148-43.2E.
CANCEL THIS MSG 21 AUG.
Search and Rescue - Missing Vessel
ON PASSAGE FROM LAE (06-44S 147- 00E) TO FINSCHHAFEN (06-36S 147-51E), MOROBE PROVINCE. VESSEL DEPARTED LAE AT 310500Z JUL 15 FOR FINSCHAFFEN WITH ETA OF 310800Z JUL 15 BUT FAILED TO ARRIVE.
ALL VESSELS REQUESTED TO KEEP A SHARP LOOKOUT AND BE PREPARED TO RENDER ASSISTANCE. REPORTS TO THIS STATION OR MRCC PORT MORESBY VIAEMAIL: ******@****.***.**, TELEPHONE +*** *** ****; RCC AUSTRALIA VIA TELEPHONE +*********** INMARSAT THROUGH LES BURUM (POR ***,IOR***), SPECIAL ACCESS CODE (SAC) **, HF DSC *******
NL BURUM LES 204 4-AUG-2015 03:23:14 773980
AMSA_ER 23150928
PAN PAN
FM JRCC AUSTRALIA 030858Z AUG 15 INCIDENT 2015/5086
AUS4602 CORAL AND SOLOMON SEAS
23FT WHITE BANANA BOAT WITH BROWN STRIPES, AND A 40HP OUTBOARD AND 5 ADULT MALES IS OVERDUE ON PASSAGE FROM LAE (06-44S 147- 00E) TO FINSCHHAFEN (06-36S 147-51E), MOROBE PROVINCE. VESSEL DEPARTED LAE AT 310500Z JUL 15 FOR FINSCHAFFEN WITH ETA OF 310800Z JUL 15 BUT FAILED TO ARRIVE.
ALL VESSELS REQUESTED TO KEEP A SHARP LOOKOUT AND BE PREPARED TO RENDER ASSISTANCE. REPORTS TO THIS STATION OR MRCC PORT MORESBY VIA EMAIL: *******@****.***.**, TELEPHONE +*** *** ****; RCC AUSTRALIA VIA TELEPHONE +************ INMARSAT THROUGH LES BURUM (POR ***,IOR ***), SPECIAL ACCESS CODE (SAC) **, HF DSC *********, EMAIL: ******@****.***.** OR BY FAX +************.
NNNN
Scientific Research Vessel Drilling - Request for wide clearance
NL BURUM LES 204 4-AUG-2015 02:29:41 709950
AMSA_ER 23153978
SECURITE
FM JRCC AUSTRALIA 040224Z AUG 15
AUSCOAST WARNING 202/15
SPECIAL PURPOSE VESSEL JOIDES RESOLUTION CONDUCTING DRILLING OPERATIONS IN POSITION 28 39.80` S 113 34.60` E
2.5NM CLEARANCE REQUESTED.
NNNN
Weather Warning
PAN PAN
TROPICAL CYCLONE WARNING / ISSUED FOR THE NORTH OF EQUATOR OF METAREA
XI(POR).
WARNING 050900.
WARNING VALID 060900.
TYPHOON WARNING.
TYPHOON 1513 SOUDELOR (1513) 930 HPA
AT 19.9N 133.2E WEST OF PARECE VERA MOVING WEST 12 KNOTS.
POSITION GOOD.
MAX WINDS 95 KNOTS NEAR CENTER.
RADIUS OF OVER 50 KNOT WINDS 80 MILES.
RADIUS OF OVER 30 KNOT WINDS 240 MILES NORTH SEMICIRCLE AND 210 MILES
ELSEWHERE.
FORECAST POSITION FOR 052100UTC AT 20.1N 130.6E WITH 50 MILES RADIUS
OF 70 PERCENT PROBABILITY CIRCLE.
935 HPA, MAX WINDS 90 KNOTS NEAR CENTER.
FORECAST POSITION FOR 060900UTC AT 20.8N 128.1E WITH 75 MILES RADIUS
OF 70 PERCENT PROBABILITY CIRCLE.
935 HPA, MAX WINDS 90 KNOTS NEAR CENTER.
JAPAN METEOROLOGICAL AGENCY.=
Pete’s tutorial starts from a fresh install of Ubuntu and uses GQRX, GNU Radio Companion, WxtoIMG and the MeteorM2 decoding tools. He shows how to set up the audio piping within Linux, how to run the MeteorM2 LRPT Offline decoder Windows tool in Wine, a Linux Windows emulator and how to use WxtoIMG together with GQRX.
The NOAA and Meteor M2 weather satellites transmit images that they have taken of the earth. With an RTL-SDR and appropriate antenna you can receive these images. On this blog we have Windows tutorials on receiving NOAA and Meteor M2 satellites.
The Windows LRPTOfflineDecoder tool running in Linux with Wine.
Over on YouTube user pe1etr has uploaded a tutorial video showing how to set up RDS Spy and SDR# for monitoring RDS. RDS stands for Radio Data System and is a sub carrier added to some FM broadcast signals which carries information such as the station name, the song/programme playing and other data. Although SDR# decodes RDS stations already, a more powerful RDS decoder and monitoring tool is RDS Spy. To get RDS Spy to work with SDR# you need to use a special plugin called MPX Output, which allows SDR# to output audio that includes the RDS subcarrier, which can then be piped via a virtual audio cable to RDS Spy.
Pe1etr’s video shows how to install the MPX Output plugin, how to set it up with virtual audio cable and how to use it with RDS Spy.
Tutorial: Using RDS Spy with the SDR# mpx output plug-in
Over at the MIT Haystack Observatory in Westford Massachusetts, researchers O.B Alam and A.E.E Rogers have been working on creating a low cost ground based Ozone spectrometer out of RTL-SDR dongles (pdf warning). An Ozone spectrometer is used by scientists to measure the concentration, velocity and temperature of the ozone gasses in the mesosphere (50 – 85 km above the ground) and lower thermosphere (85 km+) at the Ozone line frequency of 11072.4545 MHz.
The spectrometer the researchers built consists of a satellite TV parabolic reflector dish with 46.72cm diameter, 9750 MHz LNBF, two Bias Tees, two 740 MHz high pass filters, two 8dB attenuators, a calibration pulse generator, an Intel NUC mini PC and three R820T RTL-SDR dongles.
RTL-SDR based Ozone Spectrometer block diagram from the MIT Haystack Observatory.Photo of some of the components of the ozone spectrometer.
Now it is possible to use an RTL-SDR to receive the FIS-B weather information that is transmitted on the 978 MHz UAT frequency which is available only in the USA. UAT stands for Universal Access Transmitter and is similar to ADS-B transmitted at 1090 MHz, however UAT has some extra features for pilots compared to ADS-B. In addition to location information UAT provides a Traffic Information Service (TIS-B) which allows pilots to see what ground control sees on their traditional RADAR system. It also provides a Flight Information Service-Broadcast (FIS-B) which includes weather and other information. UAT is commonly used on small aircraft due to it’s lower cost and additional features.
To receive UAT FIS-B weather information the pilot used dump978 on a Raspberry Pi 2. Dump978 is a UAT decoder, similar in operation to dump1090. He has also created a program called “Stratux“, which together with a WiFi adapter allows the decoded FIS-B data to be transmitted from the Raspberry Pi by WiFi to an iPad running ForeFlight. Running the software is as simple as piping the 978 MHz signal from rtl_fm into dump978, and then piping the decoded output of dump978 into stratux. Foreflight can then connect to the WiFi signal and work like it is connected to an expensive Stratus receiver.
In the video example below you can see some weather radar animations from FIS-B data received from the RTL-SDR shown on the ForeFlight screen at around 4:29 and onwards.
RTL-SDR, Rasperry Pi, WiFi dongle and portable battery pack for receiving UAT.FIS-B UAT Weather Report received on Foreflight from a Raspberry Pi and RTL-SDR running dump978.
Recently amateur radio hobbyist WB20SZ wrote in to us to let us know about his work with creating an easy to build receive only APRS internet gateway (IGate) with a Raspberry Pi and RTL-SDR dongle. The process involves using WB20SZ’s “Dire Wolf” software which is a free Linux based APRS encoder/decoder. He writes that it can be used to observe APRS traffic, as a digipeater, APRStt gateway or Internet Gateway (IGate). Setting up the APRS IGate is a simple matter of piping the received APRS audio from rtl_fm into the direwolf software. Instructions for installing direwolf can be found here.
APRS stands for Automatic Packet Reporting System and is a packet radio protocol used by radio amateurs to broadcast real time data such as messages, announcements, weather station reports and sometimes the location of vehicles. If an APRS station has a GPS attached to it, the broadcasts will also contain the GPS coordinates. Internet Gateways or IGates are repeaters that are used to receive messages from a local radio and pass them on via the internet to a transmit capable IGate repeater anywhere in the world. To run an IGate you should be a radio amateur with a callsign. A global aggregation of APRS broadcasts received by IGates can be seen at aprs.fi.
Although this isn’t directly SDR related, this story may still be of interest to some readers. The Outernet project have just put on sale their first receiver which is called the Lighthouse. The standard Lighthouse consists of custom hardware, but there is also a DIY option in the store which consists of a HDStar DVB-S2 receiver board and a Raspberry Pi with custom software. You also need a satellite dish antenna and LNB which can be bought from their store, or found locally.
The Outernet project aims to be a “library in the sky” satellite based service that will provide free one-way access to daily downloads of data such as books, news, videos and other information. Its goal is to provide people who may not have easy physical or uncensored access to the internet an easy way to access daily information.
The currently available Outernet services cover almost the entire globe and use Ku-band (12 – 18 GHz) and C-band (4 – 8 GHz) geostationary satellite links, which is what the Lighthouse is capable of receiving when used with an appropriate dish antenna (the Ku-band service requires a 90cm dish, while the C-band service requires a much larger dish). The Lighthouse receives data from the satellites and then allows users to view the downloaded data by connecting to it via a WiFi enabled device such as a PC or smartphone. They currently broadcast 1 GB of data per day to most of the world, and 100 GB per day to sub-saharan African countries.
In the future Outernet is hoping to release their “Lantern” receiver, of which one prototype is based on a modified RTL-SDR design. The Lantern will receive their upcoming L-band (1-2 GHz) transmissions which will only require a small patch antenna and LNA’s to receive. A standard RTL-SDR with appropriate antenna and LNA’s should also be capable of receiving this service when it is released.