Category: Applications

Creating a Standalone WSPR Receiver with an RTL-SDR V3 and Raspberry Pi 3

Thank you to Zoltan for submitting his scripts for installing the rtlsdr-wsprd WSPR decoder onto a Raspberry Pi, and showing us how to configure it for an RTL-SDR V3 dongle running in direct sampling mode. This set up allows users to create an extremely low cost and permanent RX WSPR monitor.

WSPR is an amateur radio digital HF mode designed to be decodable even if the signal is transmitted with very low power and is very weak. It can be used to help determine HF radio propagation conditions as WSPR reception reports are typically automatically uploaded to wsprnet. Direct sampling mode on the RTL-SDR V3 allows you to receive HF signals without the need for an upconverter. For best results it is recommended to use a simple bandpass filter for the band of interest.

Zoltan's tutorial comes with a companion YouTube video where he demonstrates his set up. He uses a random wire antenna on his roof directly connected to an RTL-SDR V3, which is connected to a Raspberry Pi 3.  The Pi 3 communicates to his home network via an Ethernet cable.

Making a standalone WSPR receiver with RPi and RTL-SDR V3 using rtlsdr-wsprd

moRFeusQT Updates: Automatic Tracking Generator Plotting with Airspy

Outernet's moRFeus is a signal generator and frequency mixer that can be controlled either by it's built in LCD screen, or via software on a Windows or Linux PC. It can generate a clean low phase noise tone anywhere between 85 to 5400 MHz. Because it can be computer controlled it is possible to use moRFeus as a tracking generator for characterizing filters and measuring antenna SWR. A tracking generator is just a signal generator that can be set to output at the same frequency that the measurement receiver is tuned to.

In the past we've posted about some software developed by Ohan Smit, which allows a moRFeus to be controlled on a Windows/Linux PC via a nice GUI. Recently he's updated the software and it can now draw power (dbFS) graphs for characterizing filters when combined with an Airspy and TCP comms to GQRX. Ohan writes:

So when you press sweep, it detects if there is any TCP servers on port 7356 and if so tunes the radio and gets a power measurement and after the sweep is done, morfeusqt renders a graph on the fly.

It now also supports multiple devices, no configurations required. It just opens another window for the second device.

These features thus far work on both Windows 10 and Ubuntu 18.04.1, these are my two testing environments with GQRX and the Airspy.

Ohan also notes that he's working on several new features such as the ability to plot VSWR, remote control of the moRFeus via TCP, support for multiple SDR TCP protocols such as rtl_tcp, soapytcp etc, threading and progress bars, as well as possibly support for cheap Osmo-FL2K devices as a tracking generator.

You can follow his developments live on the Outernet forums.

moRFeus used as a tracking generator with an Airspy with the morfeusQT software
moRFeus used as a tracking generator with an Airspy with the morfeusQT software DAB/DAB+ Decoder Version 2 Released is a Windows/Linux/MacOS/Android/Raspberry Pi compatible DAB and DAB+ broadcast radio decoder which supports RTL-SDR dongles, as well as the Airspy and any dongle supported by SoapySDR. It is a touch screen friendly software which is excellent for use on tablets, phones and perhaps on vehicle radio touch screens.

Thank you to Albrecht Lohofener, the author of for writing in and sharing his news about the release on version 2. 2.0 Beta 1 released

I’m happy to announce the version 2.0 Beta 1. Since the first post roughly two years ago (Mar 2017) became the leading open source DAB/DAB+ SDR. Many people are using in their daily life and gave a lot of feedback.

With all this feedback we started developing the version 2.0. Apparently, the biggest change is the complete redesign of the user interface (GUI). It changed from a dark design to a bright design and handles easily different screen resolutions and orientations.

Many users asked for a favorite list, automatic playing of last station and a mute button. Now these features are ready to test with the 2.0 Beta 1!

Another new feature is the settings menu where users can set the hardware receiver with all the necessary settings. This is more user friendly than the command line parameters.

For people with a deep technical interest we improved the expert mode a lot. In addition to the spectrum users can also view the impulse response, null symbol and constellation diagram, even at the same time! An experimental I/Q RAW file recorder as well as a debug output window is available for systems without a text console.

In the back-end we improved the multi-path behavior and started a source code refactoring to allow the code to be easily maintained. Great thanks to the people from the Opendigitalradio association ( which are actively contributing to this project.

Now it is possible to build a complete DAB/DAB+ system (transmitter and receiver) with open source!

As a result from this collaboration welle-cli is available. The main use case is to monitor DAB/DAB+ transmitters networks over the internet. Thus it has a HTTP API and includes a basic Web page which shows the features.

Everyone is invited to test the new version and to report issues. For reports we recommend to open an issue at the Github page (

We are also looking for people who would like to contribute to (translations, web page, documentation and development).

Download link:

We wish everyone a happy New Year! Standard Mode Standard Mode Expert Mode

YouTube Tutorial: Spying on Computer Monitors with TempestSDR

Over on YouTube SignalsEverywhere (aka Corrosive) has uploaded a tutorial video showing how to use TempestSDR with an Airspy SDR. Back in November 2017 we posted about how we were able to get TempestSDR to run with an RTL-SDR, Airspy and SDRplay, and showed some results. Since then several people have managed to repeat our results, but many have also had trouble understanding how to make TempestSDR work and what all the settings are for.

TempestSDR is an open source tool that allows you to use any SDR that has a supporting ExtIO (such as RTL-SDR, Airspy, SDRplay, HackRF) to receive the unintentional signal radiation from a screen, and turn that signal back into a live image. This can let you view what is on a screen without any physical connections.

Corrosive's tutorial video shows us how to tune the signal in the TempestSDR software in order to receive a clear image as well as showing the software in action.

How to Spy on Computer Monitors | TempestSDR Tutorial (with an Airspy)

Creating an Inmarsat STC-C EGC Live Stream with an RTL-SDR, Raspberry Pi and OpenWebRX

Thanks to Zoltan (aka Veryokay on YouTube) for submitting information about his Inmarsat STD-C EGC live stream setup. His setup allows him to access the Inmarsat STD-C signal from anywhere in the world over the internet, thanks to the use of an OpenWebRX server. Inmarsat STD-C is a geostationary satellite service that provides information for search and rescue, as well as news, weather and incident reports for mariners. We have a tutorial from a few years ago which shows some example messages. OpenWebRX is an efficient SDR streaming server platform that allows you to access RTL-SDR's and other SDRs from anywhere in the world via an internet connection.

In his setup Zoltan uses a Raspberry Pi 3, RTL-SDR Blog V3, L-band LNA and L-band antenna for receiving and processing the signal. Power is provided via a Power over Ethernet (PoE) adapter, and the whole thing is placed outside, in a weatherproof plastic lunchbox.

The video shows the hardware, and then goes on to describe the software setup, along with a demonstration of the OpenWebRX stream. More information as well as the link to his publicly accessible OpenWebRX Inamrsat STD-C stream can be found on his blog post.

INMARSAT STD-C EGC live streaming

Bitcoin Satellite Now Supports Lightning Payments: Receive with RTL-SDR

Bitcoin is a digital currency based on blockchain technology, and Blockstream are a large innovator in the Bitcoin world. They have recently been developing the 'lightning network' which is a layer that sits on top of the blockchain. The goal of the lightning network is to provide a second layer that helps to speed up bitcoin transactions and alleviate network congestion.

In a previous post we noted that Blockstream have data channels leased on several geostationary satellites. The goal of these satellites is to help users download the blockchain, which is the ledger of all bitcoin transactions ever made. Over time the ledger grows and becomes larger and larger, and at the time of writing is currently about 200 GB in size. Rural/field users of Bitcoin with slow, intermittent, or no internet connection can use this satellite to download or update their ledger and confirm that they have received payments.

To receive the satellite an RTL-SDR dongle together with a Linux PC, LNB and satellite dish antenna are used. More information about setting up a receiver can be found on their GitHub.

Recently Blockstream have released news that their satellites now support Lightning transactions. In addition the Asia-Pacific satellite is now online. This should help boost adoption of the lightning network among rural users.

Blockstream satellite currently covers almost the entire world
Blockstream satellite currently covers almost the entire world

Listening in to a DECT Digital Cordless Phone with a HackRF

Over on YouTube SignalsEverywhere (aka Corrosive) has uploaded a new video where he shows a demonstration of him listening in to a DECT digital cordless phone with his HackRF. 

DECT is an acronym for 'Digital Enhanced Cordless Telecommunications', and is the wireless standard used by modern digital cordless phones as well as some digital baby monitors. In most countries DECT communications take place at 1880 - 1900 MHz, and in the USA at 1920 - 1930 MHz. Some modern cordless phones now use encryption on their DECT signal, but many older models do not, and most baby monitors do not either. However, DECT encryption is known to be weak, and can be broken with some effort.

In his video Corrosive uses gr-dect2, a GNU Radio based program that can decode unencrypted DECT signals. In the video he shows it decoding a DECT call from his cordless phone in real time.

Demonstration Listening to DECT Phone Call with a HackRF SDR

Help Track Data from CubeSail with an RTL-SDR

On December 16 Rocket Lab launched 13 new cubesats into orbit via it's Electron rocket which was launched from New Zealand. One of those Cubesats is "CubeSail" which is a set of two satellites that aims to deploy a 260 m long solar sail between the two.

CubeSail is a technology demonstration by CU Aerospace which shows the viability of solar sail propulsion for deep space missions. It was built and is operated by students at the University of Illinois at Urbana-Champaign through the Satellite Development, or SatDev student organization.

Over on Reddit, one of the engineers working on the Cubesail project has put out a request to help receive and upload any telemetry that you receive from the Cubesail satellite. Currently they only have one ground station which makes monitoring the satellite difficult as they can only collect data when it is passing overhead.  By employing the help of radio enthusiasts from around the world they hope to gather more data. He writes:

Hello amateur radio enthusiasts! I'm part of the CubeSail mission, one of the 13 satellites deployed early this morning (2018/12/16) from RocketLab's Electron rocket.

The reason why I'm posting is that we need your help! We're trying to gather as much data as possible from the beacons, but only have one groundstation at the moment. I've put together a little Python script which can be used to decode the data, so if you're interested and willing to help out a bunch of eager fellow space enthusiasts to get some data, please try and get a packet or two!

Here's the information you need to know (let me know if I'm missing anything):

Frequency: 437305 kHz

Modulation: GFSK (GR3UH scrambling)

Bandwidth: 15kHz

Callsign: WI2XVF

Link Layer: AX.25/HDLC

Baud Rate: 9600


1 99999U          18350.31100694  .00048519  00000-0  21968-2 0 00004
2 99999 085.0351 178.2861 0013006 291.7248 120.7146 15.20874873000012

Here's a link to the decoder, it runs in Python 3:

According to the information a 437 MHz antenna is required, and most likely it will need to be a directional antenna that is hand or motor tracked. Some SatNOGS ground stations are already receiving and recording Cubesail data too.

An artists rendition of the CubeSail solar sail deployment
An artists rendition of the CubeSail solar sail deployment