Preview: GNU Radio 3.8 Running on an Un-Rooted Android Smartphone

Over on Twitter and YouTube Bastian Bloessl (@bastibl) have been posting teaser shots and videos of GNU Radio 3.8 running on an un-rooted Android device. Unfortunately there doesn't yet seem to be any word yet on how he's been able to do this, but we guess  that the details will all be released in due time, possibly on his blog.

GNU Radio is an open source digital signal processing (DSP) toolkit which is often used in cutting edge radio applications and research, and to implement decoders, demodulators and various other SDR algorithms.

GNU Radio 3.8 on un-rooted Android receiving FM w/ HackRF (take 2)

Comparing Four Wideband Magnetic Loop Antennas on HF with an SDRplay RSPduo

Over on YouTube the Scanner and Sdr Radio channel has uploaded a video comparing four different brands of HF wideband loop antennas using an SDRplay RSPduo. The loops he tested include the cheap Chinese MLA-30 (~$40), the Cross Country Wireless (CCW) loop ($70), Bonito ML200 (~$442) and the Wellbrook 1530LN (~$305).

The MLA-30 was slightly modified with the cheap coax removed and a BNC connector added. Each of the antennas used a wire loop with diameter of approximately 1.6m, except for the Wellbrook which has a fixed size solid loop of 1m.

The tests compare each loop against the Wellbrook which is used as the reference antenna. In each test he checks each HF band with real signals on the RSPduo and compares SNR between the two antennas.

The results show that the two expensive antennas, the Bonito and Wellbrook, do generally perform the best with the lowest noise floors, but surprisingly the MLA-30 actually performs very well for it's price point, even outperforming the Wellbrook reference on SNR in some bands. We note that some of the improvement may be due to the larger 1.6m loop size used on the MLA-30, compared to the 1m loop on the Wellbrook.

Also we note that it can be hard to compare antennas in single tests, because the differences in antenna radiation patterns could be favorable for some signals, and less so for others, depending on the location.

Comparing 4 magnetic loops for hf

TechMinds Reviews our RTL-SDR Blog L-Band Patch Antenna + Horn & Dish Mod

Over on YouTube the TechMinds YouTube channel has uploaded a review of our RTL-SDR Blog L-Band patch antenna which we recently released. TechMinds tests the antenna on a STD-C Inmarsat channel with the Scytale-C decoder, and on various AERO ACARS transmissions with JAERO. Later in the video he also tests the patch antenna on Iridium reception using the Iridium Toolkit software. In all tests the patch is able to suitably receive the signal with either an RTL-SDR or Airspy SDR.

We also wanted to make a note about an additional tip regarding polarization that many people using the antenna seem to have missed. As Inmarsat signals are LHCP polarized, it is important to not only point the antenna towards the satellite, but also to rotate the antenna to match the polarization until maximum SNR is achieved. The rotation can make the difference between strong signals and nothing received at all.

RTL-SDR Active L-Band Patch Antenna For Inmarsat / Iridium / GPS

We've also recently seen a user 'Bert' who has needed to boost the signal strength as he was running the patch inside and at a location in northern Europe with poor reception of Inmarsat. To boost it he simply added a metal horn over the patch made from an old aluminum box, and also a back plate reflector. He notes that this improved his SNR on AERO 10500 from 8 - 9 dB, up to 12 - 14 dB. He also tested using the patch on a dish antenna, and found very good results too.

Aluminum Horn Added to L-Band Patch
Aluminum Horn Added to L-Band Patch
L-Band Patch Antenna on Dish
L-Band Patch Antenna on Dish

cuSignal: Easy CUDA GPU Acceleration for SDR DSP and Other Applications

The RAPIDS cuSignal project is billed as an ecosystem that makes enabling CUDA GPU acceleration in Python easy. Scipy is a Python library that is filled with many useful digital signal processing (DSP) algorithms. The cuSignal documentation notes that in some cases you can directly port Scipy signal functions over to cuSignal allowing you to leverage GPU acceleration.

In computing, most operations are performed on the CPU (central processing unit). However, GPU's (graphical processing units) have been gaining popularity for general computing as they can perform many more operations in parallel compared to CPUs. This can be used to significantly accelerate DSP code that is commonly used with SDRs.

In particular the developers have already created a notebook containing some examples of how cuSignal can be used with RTL-SDRs to accelerate an FFT graph. There are various other DSP examples in the list of notebooks too. According to the benchmarks in the notebooks, the GPU computation times are indeed much faster. In the benchmarks they appear to be using a high end NVIDIA P100 GPU, but other NVIDIA graphics cards should also show a good speedup. 

The cuSignal code is based on CUDA, so for any GPU acceleration code to work you'll need to have an NVIDIA based GPU (like a graphics card) with a Maxwell or newer core.

We note that in the future we'll be investigating how this could be used to speed up the passive radar algorithms that are used in the KerberosSDR. It may also be useful for running DSP code quickly on a $99 NVIDIA Jetson Nano single board computer.

NVIDIA Tesla P100. A high end $3000+ GPU.
NVIDIA Tesla P100. A high end $3000+ GPU.

Creating An Automated Raspberry Pi and RTL-SDR Based NOAA Weather Satellite Station

The nootropicdesign blog has recently uploaded a comprehensive tutorial showing how to create an automated NOAA Weather Satellite ground station using an RTL-SDR V3 and an Raspberry Pi 3. The project also makes use of an Amazon S3 bucket, which is a cheap web storage platform that allows you to store and access the downloaded images.

The tutorial starts by showing you how to set up your Amazon AWS credentials and bucket on the Raspberry Pi, and how to host a simple webpage that can be accessed publicly. The second stage shows how to set up the RTL-SDR drivers and wxtoimg which is used to decode the images. Finally, the third stage shows how to create the automation scripts that automatically schedule a decode, and upload images to the AWS bucket.

Flowgraph for an automated NOAA satellite weather image station.
Flowgraph for an automated NOAA satellite weather image station.

Using an RTL-SDR and Speech To Text to Create Alerts on Specific Phrases

Atlassian Opsgenie Engineer Fahri Yardımcı has recently written up an interesting post that details how he's using Opsgenie and Amazon Transcribe to automatically create alerts when specific voice phrases are mentioned on a radio channel. For example, if the words "blue team" are heard on the radio, the system can automatically issue an alert with the spoken words to members of the blue team in an organization. Amazon Transcribe is a cloud based speech to text service and Opsgenie is a platform that is used for managing and delegating alerts from multiple IT or other computer systems.

The system works by using an RTL-SDR and the ham2mon software to scan, receive and record voice from multiple voice channels. Fahri notes that he modified ham2mon slightly in order to allow it to upload the .wav files to an AWS S3 server which then runs the Amazon Transcribe service to convert the voice into a text file.

To make an interesting use case, we have imagined this scenario: When we detect a phrase in predefined words, like “Help”, “Execute Order 66”, “North outpost is compromised”, “Eggs are boiled”, we want to create an alert in Opsgenie. Opsgenie can send notifications to users via various ways such as push notifications and calls.

Amazon Transcribe uses advanced machine learning methodologies, to convert an audio stream to a text. As mentioned before, ham2mon uploads to .wav files to S3 and a Lambda is triggered from S3 Events. Lambda calls Transcribe API and depending on the result, Lambda creates an Opsgenie Alert through API.

Fahri writes that his system also filters out small files that may just be noise, and files with voice less than 3 second long. He's also added a custom vocabulary to Amazon Transcribe with words commonly heard on the radio, as this improves the transcription algorithm, especially in the presence of radio noise.

The rest of the post goes into further detail about the specific cloud services used and the flow of the system.

Flow Graph of the Radio to Transcription System
Flow Graph of the Radio to Transcription System
An example alert from Opsgenie when the phrase "red team" was heard.
An example alert from Opsgenie when the phrase "red team" was heard.

Investigating Problems with the Tesla HomeLink RF Signal with a HackRF and GNU Radio

Tesla vehicles have a feature where they can copy and mimic a garage door remote via a built in transmitter on the car itself. This frees you from having to carry around a garage door key fob, and you can simply open your garage door by pressing a button on the car's LCD screen.

However, some people have reportedly been having a little trouble with this feature as in some cases the garage door would begin opening, and then suddenly stop opening as if the keyfob button had been pressed twice.

Over on YouTube CWNE88 decided to investigate this problem using his HackRF and GNU Radio. From a simple waterfall he was able to determine that the Tesla actually transmits the mimic'd garage door signal for a full two seconds.

As a keypress from the original keyfob would typically result in a much shorter transmission, CWNE88 believes that the long two second transmission could in some cases be seen as two transmissions by the garage door, resulting in an open, and then close command being detected. 

Tesla HomeLink RF Signal

QRUQSP – Receiving Weather Sensors via RTL-SDR and Sharing over APRS

Thank you to Andrew Rivett for writing in and sharing news about his project called "QRUQSP" which is aiming to provide an easy to set up system for allowing amateur radio operators to put weather sensors on the APRS network and log the weather data. Andrew writes:

For that last 2 years I've been working on QRUQSP.org, a system to receive weather sensors via a RTL-SDR.com V3 on a Raspberry Pi and then beacon that data over Amateur Radio APRS. I've also developed a dashboard that can be used on iPad 1 and old tablets, and soon will have the ability to sync data between Pi's and to the cloud.

For more information, please check out https://qruqsp.org/ , we have roadmaps under Software and Hardware.

The QRUQSP website also explains:

Amateur Radio offers many opportunities to receive digital messages, decode them and make use of the data contained within those messages. Our primary goal is to store and organize those messages in a database in a way that improves the operator's ability to analyze, assess importance, and relay messages as appropriate for his or her amateur radio service.

The service makes use of his hardware kits that are currently available for preorder on his website, with the basic kit starting at $80. Purchasing a kit or $10 monthly subscription to the cloud service software allows you to participate in the closed beta, which is currently only available for amateur radio operators.

The QRUQSP Hardware
The QRUQSP Hardware

In terms of software Andrew has also created a web application that can be used to collect and display the weather data collected over APRS or rtl_433. The service can be hosted directly on the systems Raspberry Pi, or online on the cloud via the QRUQSP subscription service.

QRUQSP Dashboard and Weather Data Log Display
QRUQSP Dashboard and Weather Data Log Display