GNU Radio is a very powerful open source platform for implementing various digital signal processing (DSP) algorithms. It is very commonly used with software defined radios like the RTL-SDR, as well as much higher end units. The community that uses GNU Radio is very large, and so every year they hold a conference that highlights some of the most interesting applications and developments related to GNU Radio. The 2018 GNU Radio conference was held in Las Vegas during September 2018. Recently they have uploaded the talks to YouTube, and below we're posting some of our favorites. The full list can be found on their YouTube channel.
Keynote Talk: SatNOGs
In this keynote talk Manolis Surligas discusses the SatNOGs project. SatNOGs is a non-profit organization creating an open source and volunteer based satellite ground station network.
GRCon18 - Keynote: SatNOGs
Open Source Radio Telescopes
John L. Makous discusses his work in creating low cost and home made horn antenna radio telescopes designed to receive the 21cm hydrogen line and other astronomical objects and phenomena. The idea is to provide a low cost solution and easy to build telescope to use in schools.
GRCon18 - Open Source Radio Telescopes
Enter the Electromagic Spectrum with the USRP
Nate Temple gives us an overview of several signals that have been decoded with GNU Radio flowgraphs.
GRCon18 - Enter the Electromagic Spectrum with the USRP
Software Defined Radar Remote Sensing and Space Physics
Juha Vierinen discusses using a USRP to measure propagation conditions with ionospheric chip sounders, and improvements to chirp sounders by using spread spectrum noise. He also discusses various other radar techniques and applications.
GRCon18 - Software Defined Radar Remote Sensing and Space Physics
If you weren't already aware, over the past few months we've been working with the engineering team at Othernet.is to create a 4x Coherent RTL-SDR that we're calling KerberosSDR. A coherent RTL-SDR allows you to perform interesting experiments such as RF direction finding, passive radar and beam forming. In conjunction with developer Tamas Peto, we have also had developed open source demo software for the board, which allows you to test direction finding and passive radar. The open source software also provides a good DSP base for extension.
If you're interested and missed out in the early campaign, don't worry we still have about 250 units left from this batch for sale at a price of $140 + shipping over on our Indiegogo Campaign.
Demo Program Updates
Over the past few weeks we've been working on a few code speed improvements to the demo software, and we now believe that it should be fast enough to run on a Pi 3 B+ at decent update rates. In particular the passive radar display frame rate has been improved and we're able to get about 1 FPS on a Tinkerboard now.
We will soon release the full code, but for now you can see the main two libraries developed by Tamas' that are used in the KerberosSDR code. These libraries contain the direction finding and passive radar processing algorithms.
pyAPRIL - Python Advanced Passive Radar Library. Available on PyPi and GitHub
pyArgus - Python Beamforming and Direction Finding Algorithms. Available on PyPi and GitHub.
Android Direction Finding Companion App Updates
Over the holidays we've been working on a simple companion Android app for the direction finding feature. Using the GPS and/or compass sensors on the Android phone, and the transmitter bearing given by the KerberosSDR we can plot a bearing towards the transmitter that we are tuned to.
The phone connects to a laptop/SBC WiFi hotspot running the KerberosSDR Linux software, and reads the bearing via a simple php HTML server.
Driving around with the KerberosSDR gives better results than when stationary as we can take multiple readings at different points which helps to average out multipath distortions.
In the image below we used a linear antenna array of four dipoles attached to the windscreen of a car. KerberosSDR was tuned to a TETRA transmitter at 858 MHz.
We drove down a street and then back up it. The red lines indicate the direction of the car as determined by GPS, the blue lines indicate the forward direction towards the transmitter, and the green lines the reverse direction. (a linear antenna array won't know if the transmitter is in front or behind it).
You can see that the majority of blue/green lines point towards the TETRA transmitter which we've marked with a red location marker at the known location.
Getting a bearing from GPS requires that you are moving. However if you are stationary it is also possible to use the compass sensor in the Android app, but Android compass sensors are not particularly accurate.
We also tested the app with a circular array of antennas and found it to work well too. A circular array has the benefit over a linear array of providing only one direction towards the detected signal, but may be more susceptible to multipath issues. In our test the circular array was simply four magnetic whips placed on top of a car.
This time we then drove around for a longer time while logging the data in the Android app. We can see that the majority of blue lines point towards the known transmitter location. Blue lines pointing away from the transmitter may be due to multipath or a briefly incorrect GPS heading (e.g. during a turn). Sometimes reflections or refractions of the signal can be more likely to be picked up if the direct path to the transmitter is really blocked. However if you have enough data points from driving around, it becomes much more clear where the actual transmitter is.
We now have some pictures of the boards being manufactured at the factory. Unfortunately we are behind our initial shipping target of mid-Jan due to the previous unexpected payment delays from Indiegogo, and because of this we may hit the Chinese New Year holidays which could delay us further as factories take a 2 week holiday starting late Jan. We're really hoping to have them shipped off just before then, but we don't know if we can beat the clock. I know some of you are anxious to get started with KerberosSDR, and so I do apologize for the delay.
Over on his YouTube channel ModernHam has created a video showing him using an RTL-SDR and Raspberry Pi with RPiTX to record and replay the signal generated by the remote of a wireless power plug. A wireless power plug allows you to turn an AC wall outlet on/of remotely via a remote control. Controlling them with a Raspberry Pi can be a simple way to add home automation. One example ModernHam gives is that he hopes to use RPiTX and the wireless power plugs to create a smart coffee pot that will automatically turn on at 7 am, and turn off at 9 am.
In the past we have created a similar tutorial here, but new updates to RPiTX now make this process much easier and more reliable and ModernHam's video shows the new procedure. The new process is simply to look up the FCC frequency of the remote control transmitter, record an IQ file of the transmissions for the ON and OFF buttons, and then use the RPiTX sendiq command to replay the signal. You can then use simple Linux shell scripts to create automation.
Replay Attack with Remote Plugs for Home Automation with the Raspberry PI
Over on YouTube Corrosive has uploaded a new tutorial video showing us how we can demodulate DVB-S DATV (Digital Amateur TV) on a Windows PC with SDRAngel. DATV is a mode used by hams to transmit and receive digital video, and SDRAngel is a multiplatform SDR software platform that supports multiple SDRs such as the RTL-SDR, HackRF, PlutoSDR, LimeSDR and more.
SDRAngel comes with a built in DATV demodulator, but it is necessary to install the FFMPEG video decoder yourself. Corrosive's tutorial shows where to download the decoder, and how to install it into SDRAngel. He then goes on to show how to use SDRAngel to begin receiving and demodulating a DATV signal.
We note that in a previous post Corrosive also showed in another video how to transmit and receive DATV with a LimeSDR and a modified $20 DVB-S receiver.
Decoding DVB-S DATV on Windows with SDRAngel | Works with RTL HackRF Pluto Lime and other SDR
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
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.
Welle.io 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 welle.io for writing in and sharing his news about the release on welle.io version 2.
welle.io 2.0 Beta 1 released
I’m happy to announce the version welle.io 2.0 Beta 1. Since the first rtl-sdr.com post roughly two years ago (Mar 2017) welle.io became the leading open source DAB/DAB+ SDR. Many people are using welle.io 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 (http://www.opendigitalradio.org/) 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.
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)