Category: Applications

Talk: Tracking of Low Earth Orbit Satellites with the RTL-SDR

Back in July we posted about Travis Goodspeed’s project on setting up a satellite dish that automatically tracks satellites in low earth orbit, where he uses an RTL-SDR for the radio. Travis gave a talk on this project at the Chaos Communication Congress conference, and the video has now been uploaded to YouTube.

Satellites in Low Earth Orbit have tons of nifty signals, but they move quickly though the sky and are difficult to track with fine accuracy. This lecture describes a remotely operable satellite tracking system that the author built from a Navy-surplus Inmarsat dish in Southern Appalachia.

The entire system is controlled through a Postgres database, fed by various daemons spread across multiple machines. So when I click on a satellite on my laptop or cellphone, it runs “UPDATE target SET name=’Voyager 1′;” and the motor daemon then begins to track the new target while the prediction daemon maintains accurate estimates of its position in the sky. Additional daemons take spectral prints or software-defined radio recordings of the targeted object for later review.

Hillbilly Tracking of Low Earth Orbit [30c3]

Improved Digital Voice P25 Decoding with DSD+

Over on Reddit we’ve seen mention of an upgraded Digital Speech Decoder (DSD) program, named DSD+. The original DSD is a program that can be used in conjuction with a SDR receiving program such as SDR#, and an audio piping program like VBCable to decode digital speech, such as P25 and DMR/MOTOTRBO.

DSD+ claims to have improved decoding and audio quality capabilities. An audio sample from a weak P25 sample can be found here for DSD+, and for comparison here for the old DSD.

DSD+ can be downloaded from this megaupload link.

To run DSD+. you will need to place an MP3 encoder file lame_enc.dll into the same folder as the dsd.exe executable. This file is not included with DSD+ due to licencing. For Windows, lame_enc.dll can be downloaded from (Mega Mirror). Download the ZIP option, and then copy the dll file into the same folder as DSD+.

If you don’t know how to use DSD, see our tutorial on using DSD here, and if desired simply use DSD+ instead of the original DSD. (Note cygwin is not required for DSD+)

DSD+ Output
DSD+ Output

Using an RTL-SDR and RTL_433 to Decode Various Devices

Over on his blog, Gough Lui has posted about his experiences with decoding various ASK/OOK devices on the unlicenced 433 MHz ISM band using an RTL-SDR and the command line program rtl_433.

Gough shows how he was able to receive and decode the data from an Aldi weather station device and a wireless doorbell transmitter. He also was able to modify the rtl_433 code slightly to produce a CSV log file of the temperatures that were received and decoded from the weather station.

rtl_433 output of the weather station
rtl_433 output of the weather station

Elster R2S Smart Meter GNU Radio Decoder

Smart meters are meters that monitor electricity usage and wirelessly transmit their data to the electricity company. They are a part of the “smart grid”, and allow for better electricity control and usage reporting.

Clayton Smith was able to reverse engineer the data signal from the Elster R2S meters which are used in the Ottawa area on the 902-928 MHz band. The Elster meters use frequency hopping channels, and Clayton was able to receive 6 out of the 25 channels in his area, which should be sufficient, as most of the data packets are repeated on different channels.

He has released his GNU Radio program which will work the the RTL-SDR. Currently, it is capable of displaying meter readings and hourly electricity usage to a terminal.

Receiving a 10 GHz Reflected Moon Beacon with the RTL-SDR

There is an amateur radio group in Germany known as DL0SHF which transmits a 10 GHz (QRG = 10.368.025 MHz) beacon at the moon whenever it is visible at their site. The goal of this transmission is to detect the very weak beacon reflection.

Amateur radio hobbyist Rein (W6SZ) has written in to let us know about his, DK7IJ’s and the DL0SHF groups success with receiving the beacon using the RTL-SDR. He writes

DL0SHF transmit a signal to the moon when the moon is visible at the site. The run 2 modes 50 and 500 W output, 20 seconds on, 40 seconds off.

Last night, I managed to detect the beacon with a very simple receiving package. Amazing enough, using WSJT moon tracking data, the signal appeared right away when the moon appeared here above the trees.

The signal lasts only 20 seconds but then 40 seconds later, it returned! By the books.

I use a simple 10 GHz receiver here that I use for scouting signals on 10 GHz terrestrial as member of the San Bernardino Microwave Society.

It consists of a RTL Dongle IF block tuned to 618 MHz as IF.
Front-end is a PLL LNB, not modified, running with 9.750 GHz LO

The LNB is powered with 12 Volts by means of a Bias Tee.

Both items can be acquired for about USD 25.- on eBay and other places.

The antenna is a standard 18 inch satellite off-set dish.

The antenna has some elevation control and the feed ( LNB ) can be rotated for polarity control.

Every variable is manually operated.

At times I measured the beacon as high as 15 dB above the noise using HDSDR as DSP processor software.

The beacon was running in the 500 W output mode during these observations.

Moon bounce Visisble on the waterfall
Moon bounce visible on the waterfall
Moonbounce Equipment Setup
Moonbounce Equipment Setup

Locating an Interfering Signal with Radio Direction Finding and the RTL-SDR

The people at the MIT Haystack Observatory discovered recently that someone was transmitting an interfering signal on their licensed radar band. The interferer was effectively jamming the radar, preventing them from carrying out any experiments.

After checking for local causes of interference and finding nothing, they decided that the interferer must be coming from further away. To find the location of the jamming signal they did some radio direction finding. This involved driving around with Yagi and magnetic loop antennas and RTL-SDR and USRP N200 SDRs and then measuring the signal strength at various points.

For the software they used a custom GNURadio block which calculated the power spectra using the FFTW C library, and averaged the results to disk. They then post processed the data to calculated the RFI power, and correlated the data with GPS coordinates recorded on his phone.

After all the data was processed, they discovered that the interference originated from an FM radio tower which had a faulty FSK telemetry link. They notified the engineer responsible who then replaced the link and the interference disappeared.

RFI strength at various geographic locations
RFI strength at various geographic locations

ADS-B Virtual Radar RTL-SDR Tutorial in the ARRL QST Magazine

The American Radio Relay League (ARRL) a.k.a The American National Association for Amateur Radio has put online a freely available ADS-B tutorial featured in their monthly QST magazine, written by Robert Nichols, W9RAN. The tutorial focuses on using an R820T RTL-SDR dongle to receive ADS-B signals, and then using computer software to decode the signals and create a virtual aircraft radar.

ADS-B is a protocol used by most modern aircraft to broadcast their position and altitude which is determined via GPS. ADS-B is intended to supplement and eventually replace traditional radar.

In this ADS-B tutorial, they show how to create a weatherproofed 1090 MHz collinear antenna from RG-6/U coax and PVC pipe and how to use the ADSB# and virtual radar server software to decode and visualize aircraft positions, like a radar.

If interested, we also have an ADS-B virtual radar tutorial that can be found here.

ADS-B Virtual Air Radar Tutorial by the ARRL
ADS-B Virtual Air Radar Tutorial by the ARRL

Receiving the Chinese Yutu Moon Rover with the RTL-SDR

Amateur radio hobbyist EB3FRN was able to use his RTL-SDR to receive the telemetry signal from the recently landed Chinese Yutu moon rover. The Yutu rover transmits at 8462.08000 MHz, which is outside of any RTL-SDRs frequency range, so he used a downconverter with a local oscillator at 8 GHz to convert the signal to 462 MHz.

For the software he used Baudline and rtl_fm as the receiver. He has posted a short audio clip of the received signal on his blog as well.

Chinese Yutu Moon Rover Received with RTL-SDR and Baudline
Chinese Yutu Moon Rover Received with RTL-SDR and Baudline

ADS-B Decoder for the RTL-SDR now available for Android

A (beta version) of an ADS-B decoder and display app for the RTL-SDR dongle for Android has been released. This app allows you to receive the ADS-B radio signals emitted by modern aircraft, which contain information such as flight number, latitude, longitude and altitude, essentially giving you a live portable aircraft radar.

To use the app, you will need an Android device that supports USB OTG, which most Android devices on Android 4.0+ should support. You will also need a USB OTG cable, and an RTL-SDR dongle. You may want to consider a USB OTG cable that has a second port for external charging capabilities, as the RTL-SDR can drain the battery quickly.

The app is cheaply priced at under $2, so give it a try!

ADS-B Decoding on Android
ADS-B Decoding on Android

Demonstrating GQRX Running on a BeagleBone Black with RTL-SDR

YouTube user Brad Bowers has posted a video showing GQRX running on his BeagleBone Black with an RTL-SDR dongle. The BeagleBone Black is an embedded Linux computer, similar to the Raspberry Pi, but with significantly more processing power. He found that GQRX actually performed quite responsively on the BeagleBone.

Beagle Bone Black as Rtl-SDR front end with gqrx