Category: Applications

Experimenting with an Ultrasonic Sensor Connected to an Airspy HF+

Software defined radios can have many more applications other than just radio. For example, it's possible to connect an ultrasonic sensor which outputs a waveform at some frequency above DC directly to the input of an SDR. We can then simply treat the sensor output as an RF signal, and view it in any SDR compatible software that shows us a spectrum. Normally you'd use a microcontroller with ADC to process the output of these sensors, but using an SDR makes visualizing and experimenting with these sensors much easier.

Over on YouTube W1VLF has uploaded a video showing his experiments with an ultrasonic sensor connected to his Airspy HF+. In his experiment he places the Airspy HF+ with directly connected ultrasonic sensor in one room, and sets up an ultrasonic emitter in another room. He then uses SDR# to view the 24 kHz ultrasonic sensor signal output on the computer. As he moves the sensor around it's possible to clearly see the doppler shift of the ultrasonic sound waves on the waterfall.

In the past we've also posted about Jan de Jong who experimented with using a piezo speaker connected to an SDRplay RSP1A to detect the ultrasonic navigation sounds from bats.

AirSpy Discovery Its not just for RF anymore

Tech Minds: LoRa Text Chat with Two Othernet Dreamcatcher Boards

Back in the middle of last year we posted about Othernet's Dreamcatcher hardware and the LoRa chat application. The Dreamcatcher is Othernet's receiver and computing platform that is designed for receiving their satellite data broadcast. It is currently available for US$79.

Although the Othernet datacast is one way receive only, the Dreamcatcher board uses a LoRa radio chipset that has TX capabilities that can be leveraged for experimental purposes. One experimental piece of software that they developed is a chat application that works with two Dreamcatcher boards. It allows you to initiate a text based chat between two boards using the on board LoRa radio chips.

The TechMinds YouTube channel has recently released a video demonstrating the chat application in action, and the video shows how to set up, install and use it too. We note that since our post last year, the Dreamcatcher board has gone through a revision and no longer includes an LCD screen. The company name has also changed from "Outernet" to "Othernet".

What can you do with two Othernet Dreamcatcher Boards?

Building a FossaSat-1 LoRa IoT Ground Station

FossaSat-1 is a recently launched open source "picosatellite" with an onboard LoRa repeater designed for Internet of Things (IoT) communications. It was launched via the Electron Rocket in New Zealand on December 6. At only 5 x 5 x 5cm in size and 250g in weight, a picosatellite is a tiny satellite that fits in your hand and can be affordably built and launched for around US$40k. 

Since the launch, it has been confirmed that FossaSat-1 was successfully launched, and is working correctly. However, the antennas have not properly deployed yet resulting in a weak signal that cannot be received by small ground stations. The team are currently working on getting the antenna manually deployed from earth and the latest updates can be found on their Twitter @FossaSys. They note that if the antennas cannot be deployed, then there is still the future launches of FossaSat-1B and FossaSat-2 to look forward to.

While waiting for the antennas to deploy you can watch Andreas Speiss' YouTube video where he explains the satellite in more detail, and shows how to build a FossaSat-1 ground station that can receive the FossaSat-1 LoRa transmission and upload it to the internet. While not SDR-related as it uses a hardware based LoRa chip, this is still an interesting project that some readers may be interested in.

#302 We build a 20 Dollars LoRa Satellite Ground Station and we follow the FossaSat-1 launch

Passive Doppler Aircraft Scatter with a VOR Beacon and an RTL-SDR

Over on YouTube Meine Videokasetten has posted a video showing how he's been using an RTL-SDR to detect aircraft landing and taking off via the scatter on a VOR beacon. VOR (aka VHF Omnidirectional Range) is a navigational beacon that is transmitted between 108 MHz and 117.95 MHz from a site usually at an airport. Although as it is an older technology it is slowly being phased out in some places. 

An interesting observation can be made that is unrelated to the actual operation and use of VOR navigation. When an aircraft passes near the VOR beacon it results in the signal reflecting and scattering off the metal aircraft body. As the aircraft is moving quickly, it also results in a frequency doppler shift that can be seen on an RF waterfall display.

In his video Meine Videokasetten uses an RTL-SDR and OpenWebRX to receive the VOR signal. He then pipes the audio output of that signal into Speclab which allows him to get significantly increased FFT resolution for the waterfall. This increased resolution allows him to clearly see the doppler scattering effects of aircraft on the VOR transmission. He notes that it's possible from the scattering to determine if an aircraft is taking off or landing.

Passive doppler radar on VOR beacon transmitter .:°:. A let's test it out

We note that back in 2015 we posted about the ability to "fingerprint" aircraft using this technique. Different types of aircraft will result in unique patterns on the waterfall. In that post they used analogue TV carriers which are not very common in most countries anymore, so it's good to see that this can be used with VOR signals too.

Comparing large and small aircraft with aircraft scatter
Comparing large and small aircraft with aircraft scatter with an analogue TV transmitter. From previous post.

Solving a Frequency Hopping CTF Challenge with Aliasing

At this years BSides Ottawa security conference, Clayton Smith was tasked with setting up a wireless "Capture the Flag" (CTF) competition. CTF competitions generally consist of a mystery signal that participants need to figure out how to decode with an SDR such as an RTL-SDR. 

One CTF that Clayton set up was a frequency hopping challenge with several levels of difficulty. The signal consisted of a narrow band FM signal that constantly hopped between multiple fixed frequencies. The idea was to use whatever means possible to piece together that signal again so that the speech audio could be copied.

The first level had the audio signal hopping very slowly, so the speech could be pieced together manually by listening by ear to each channel it transmitted on. Subsequent levels had the signal hopping much faster, so they required some DSP work to piece everything back together.

In his post Clayton writes about three possible GNU Radio based DSP solutions to the problem. The first method he describes is an interesting method that abuses the effects of aliasing. Aliasing is a problem in SDRs when a signal can be folded on top of another, creating interference. However, this approach makes use of aliasing to purposely fold the hopping channels into one frequency, resulting in speech that can be copied.

The rest of his post explains two other methods that could be used as well. The second method involves treating the entire band consisting of the hopping signals as a single FM signal, then filtering it with a DC block. The third approach uses FFT to detect which channel is active with the highest power, then shifting that channel by it's offset.

Spectrum of the frequency hopping CTF challenge.
Spectrum of the frequency hopping CTF challenge.

Clayton also set up another CTF with gr-paint. The idea was to read text on a "painted" waterfall with ever decreasing text spacing that would eventually be too small to read on standard SDR programs like GQRX. Instead, the solution was to open the IQ data in a tool like Inspectrum or Baudline which has much higher FFT resolution. 

Gr-Painted spectrum with decreasing text.
Gr-Painted spectrum with decreasing text spacing.

Decoding Differential GPS (DGPS) with an RSPdx and MultiPSK

Over on YouTube the TechMinds channel has uploaded a new video about decoding Differential GPS (DGPS) using an SDRplay RSPdx SDR. DGPS is a terrestrially transmitted long wave signal that is used to help correct and improve GPS position data calculations which may have timing errors due to atmospheric propagation delays. It works by broadcasting correction data calculated by the difference in received GPS location and the known location of the DGPS transmission site. DGPS is typically transmitted on longwave between 285 kHz and 315 kHz, but in Argentina there are two stations at 2570 and 2950 kHz.

In the video TechMinds explains how DGPS works, and some location around the world from where it is transmitted from. Later in the video he shows a DGPS signal being received by a SDRplay RSPdx SDR, and then show a demo of how it can be decoded with MultiPSK.

We note that there also various other DGPS decoders available including decoders for Android and iOS. A list of decoders can be found on the DGPS sigidwiki page.

DGPS Differential GPS Decoding With RSPdx And MultiPSK

Coole-Radar: A Retro Terminal Based Radar Display for ADS-B Aircraft Data

John Wiseman has been working on a cool old-school retro styled aircraft ADS-B radar that runs entirely within a terminal window. So no GUI desktop should be required. The project, called "coole-radar", is available as open source code on GitHub.

It takes decoded ADS-B data via a Virtual Radar Server webpage, so it should be fairly easy to set up together with an RTL-SDR and dump1090 that feeds Virtual Radar Server. The latest version displays a radar screen with decay-like effect, a list of currently detected aircraft, and a pixelated screen of the aircraft image downloaded from the internet.

Networked Radio Direction Finding with KerberosSDR and RDFMapper

We've just uploaded a short Python script to GitHub that allows radio direction bearings from a KerberosSDR to be used with the RDF Mapper software created by Jonathan Musther. RDF Mapper is a (~US$25) program that was initially written for the RDF42, a kit based doppler direction finding system. RDFMapper runs on Windows/MacOS and Linux.

KerberosSDR is our experimental 4-Tuner Coherent RTL-SDR product made in collaboration with Othernet. It can be used for applications such as radio direction finding and passive radar. Currently it's available for US$149 on the Othernet store.

The RDF Mapper software allows you to upload bearings from multiple devices distributed around a city to a public RDF server, and view all the bearings on any internet connected PC. This can allow you to quickly triangulate the location of a transmitter.

Normally you would use RDFMapper combined with an RDF42 to upload bearings, but we've written a simple script that can be used to upload bearings generated by a KerberosSDR onto the server. The RDFMapper software can then be used to visualize those bearings.

The script is based on Python, and can run directly on the Pi 3/4 or Tinkerboard that is running the KerberosSDR, or on another PC that can see the KerberosSDR bearing server if you prefer.

Instructions are available on the GitHub page. Simply set unique station names for each of your distributed units, entry your lat/lon and fixed direction bearing. Then on the RDF Mapper software open the 'Web upload/download' tab and add the unique station ID name. All the other tabs for connecting to a GPS and serial port can be ignored, as those are used for the RDF42.

This script will only work for stationary KerberosSDR units as the lat/lon is fixed. If you want to try radio direction finding in a vehicle, we recommend using our Android App for a better experience. If there is interest, we may also add support for the Android app to upload to an RDFMapper server for mobile bearing uploads. 

Notes: RDFMapper runs on the system's default browser and it needs to run in either Chrome or Firefox to work. IE does not work. It also appears that Jonathan processes orders manually, so we just want to note that there may be a delay between payment and receiving the software.

RDF Mapper Software. Data from networked units.
RDF Mapper Software. Plotting bearing data from networked units.