Category: Digital Signals

2-Channel AIS Receiver with RTL-SDR and GNUAIS

Blogger OZ9AEC has written a post on his blog showing how he made a 2-channel AIS receiver using the RTL-SDR, GNU Radio and GNUAis. AIS is a radio protocol used by boats to broadcast their position and speed which is then used to create a type of radar system to help avoid collisions. AIS signals are transmitted periodically on one of two channels. Two channels are used to improve capacity and help avoid interference if two signals from different boats are broadcast at the same time.

Before this, most AIS receiver implementations we’d seen that used the RTL-SDR received only on a single channel. OZ9AEC’s GNU Radio program receives on both channels simultaneously like a commercial AIS receiver does and is thus a better receiver. He eventually plans to get this receiver to run on a Beaglebone.

See his post for instructions and to download the GRC files.

Update: Another AIS decoder known as gr-ais is also capable of 2 channel AIS, and bristromat from Reddit has written a tutorial on setting it up and running it with OpenCPN.

Two channel AIS Block Diagram

RTL-SDR and RDS Spy with HDSDR

On YouTube user pe1etr shows us a video where he uses his RTL-SDR combined with HDSDR, Virtual Audio Cable and RDS Spy to decode a distant RDS signal. RDS Spy is a free advanced software program capable of decoding weak RDS signals contained in many broadcast FM radio stations.

RDS stands for Radio Data System and is a digital signal embedded into broadcast FM signals. It is used by radio stations to display the name of the radio station and current song playing on an LCD screen.

HDSDR & RDS Spy side by side

New DSD Block Available for GNU Radio

The popular digital speech decoder (DSD) software has now been wrapped into a GNU Radio Companion block. Previously, DSD required use of virtual audio cables to get decoding to work with GNU Radio, but now the signal audio can be passed directly into this block.

Luke Berndt from the HackRF-dev forums has posted his work to make the functionality of DSD available to GNU Radio users in the form of a GRC block. “I have been playing around a bit and found an easy way to receive and playback digital LMR. More and more of the radio systems are going from narrow band FM to Digital. This makes it tough to listen to them on GQRX. DSD is a great program which can decoded the audio you get when you tune in a system in GQRX, but you either have to run it on another machine with a audio cable in between or figure out how to do a virtual audio cable on your machine.

Luckily, someone wrapped the DSD libraries so they can be accessed as GRC blocks. I have put together a GRC file and a Python program that make it a little easier to use the block.

If you have a chance, give them a try and let me know if they work. There is a good chance I have messed up the values in the filters or else where, but I have gotten clean audio out of it.”

Download the files from GitHub.

DSD is a Linux and Windows software program capable of decoding popular digital speech codecs such as APCO P25 and MOTOTRBO/DMR.

Via DangerousPrototypes

Rain Scatter 10 GHz Reception with the RTL-SDR

YouTube user feri67000 who last month showed us that the RTL-SDR can receive 10 GHz signals with a cheap avenger LNB PLL now shows an interesting experiment where he uses a technique known as rain scatter to receive a 10 GHz beacon with his satellite dish pointed in the opposite direction of the beacon transmitter.

Usually communications at 10 GHz are line of sight only, but by using the rain scatter technique, the 10 GHz signal can be bounced off a precipitation cloud and received with line of sight to the cloud, rather than the transmitter.

rain scatter 10ghz LX1DB beacon

Setting up an APRS iGate with the RTL-SDR

Over on Pawel Janowski’s blog (SQ7MRU) a writeup on how to set up an APRS iGate receiver with an RTL-SDR and cubieboard mini computer has been posted. The article has been written in Polish, but can be translated using Google Translate.

APRS stands for Automatic Packet Reporting System and is usually used by Amateur radio operators to broadcast the current GPS coordinates of something such as a transmitter site/car/boat or high altitude amateur balloon. These APRS packets are received by an iGate and then put onto the internet. Check out aprs.fi for an example.

To create an APRS iGate, Pawel runs a RTL-SDR compatible python program called pymultimonaprs which is used to receive and broadcast the APRS data on to the internet.

aprs_fi_rtlsdr

HackRF Receiving HRPT Weather Satellite Images

On Twitter user @uhf_satcom has been using a HackRF software defined radio together with GNU Radio, a tracking L-Band antenna and this HRPT decoding software to receive and decode HRPT weather satellite images. He used GNU Radio to output to a .RAW16 file, which the HRPT decoding software was then able to use to produce an image.

 

 

HRPT is a picture transmission protocol which stands for High Resolution Picture Transmission. There are multiple satellites which broadcast weather images in this format including the NOAA, GOES, Metop-A and Feng Yun satellites. These satellites transmit HRPT at about 1.7 GHz.

@uhf_satcom also tried to receive these images with the RTL-SDR, but was unsuccessful. But you can still receive the lower resolution APT weather satellite images using the RTL-SDR.

Below are some examples of the images he was able to receive.

hrpt_hackrf1_thumb hrptdata_noaa19a_thumb

Update: This is an image of the L-band antenna he used.

Tracking of Low Earth Orbit Satellites with the RTL-SDR

Over on travisgoodspeed.blogspot.com, Travis shows us an interesting project where he set up a satellite dish that automatically tracks and receives moving satellites, such as those in low earth orbit. Travis uses an old satellite dish salvaged from a maritime vessel as the receiving dish, a RTL-SDR for receiving the signal, and a BeagleBone for motor control and running rtl_tcp. The dish motors use satellite positional data from celestrak.com to automatically track a desired currently visible moving satellite.

tracking_satellite

GR-Air-Modes GNU Radio ADS-B Decoder for the RTL-SDR Updated

Reddit user bistromat has recently updated the GNU Radio based Mode S ADS-B decoder gr-air-modes. He has added Google maps view, a legend and zoom support to the azimuth map view, and has restructured the underlying code. The new gr-air-modes requires the latest GNU Radio 3.7 version.

Check out the original post here (with cute puppy included), and clone the latest version via github from the following link.

https://github.com/bistromath/gr-air-modes

gr-air-modes google maps screenshot