Thanks to Luigi (aka @luigifcruz and PU2SPY) for writing in and submitting to us his LimeSDR based doppler radar blog post. The LimeSDR Mini is a low cost two port TX and RX capable SDR. Luigi's doppler based radar makes use of one TX port to transmit the radar signal, and the RX port to receive the reflection. The idea is that the if the object being measured is moving, the received reflected signal will be altered in phase due to the doppler effect.
In terms of hardware, Luigi's radar uses the LimeSDR Mini as the TX/RX radio, a Raspberry Pi 3 as the computing hardware, an SPF5189Z based LNA on the RX side, and two cantenna antennas. It transmits a continuous wave signal at 2.4 GHz.
On the software side it uses a GNU Radio program to transmit, receive and process the returned signal. Luigi's post goes over the DSP concepts in greater detail, but the basic idea is to measure the phase shift between the transmitted and reflected signal via a Multiply Conjugate block, and then decimate the output to increase the resolution. The result is then output on a frequency domain waterfall graph. The GNU Radio is all open source and available on Luigi's Github.
In order to test the system Luigi first set up a test to measure an electric fan's blade speed. The result was clearly visible line in the spectrogram which moved depending on the speed setting that the fan was set to.
Software Defined Radar - Continuous Wave Doppler Radar w/ LimeSDR
In his second test Luigi measures the speed of vehicles by placing the radar on the sidewalk, pointed at cars. The result was clear indication of the vehicle passes as shown by the longer vertical lines on the graph below. The smaller lines have been attributed to pedestrians passing by.
In a third test, Luigi measured vehicle speeds in tougher conditions, with the radar placed 50 meters away from the highway, at 45 degrees, and with weeds in the way. The radar still generated obvious lines indicating vehicles passes. Finally, in his fourth test, Luigi tested the speed accuracy of his radar by measuring a car driving at a known speed. The results showed excellent accuracy.
Software Defined Radar - Continuous Wave Doppler Radar w/ LimeSDR
For a while now researchers at MIT and several other universities have been investigating methods for using frequencies in the WiFi bands to see through walls using a form of low power radar. The basic concept is to track and process the reflections of these signals from peoples bodies.
This paper demonstrates accurate human pose estimation through walls and occlusions. We leverage the fact that wireless signals in the WiFi frequencies traverse walls and reflect off the human body. We introduce a deep neural network approach that parses such radio signals to estimate 2D poses. Since humans cannot annotate radio signals, we use state-of-the-art vision model to provide cross-modal supervision.
Specifically, during training the system uses synchronized wireless and visual inputs, extracts pose information from the visual stream, and uses it to guide the training process. Once trained, the network uses only the wireless signal for pose estimation. We show that, when tested on visible scenes, the radio-based system is almost as accurate as the vision-based system used to train it. Yet, unlike vision-based pose estimation, the radio-based system can estimate 2D poses through walls despite never trained on such scenarios.
The hope is that this technology could one day be used as a replacement for camera based computer vision. It would be a non-intrusive method for applications like gaming, monitoring the elderly for falls, motion capture during film making without the need for suits and of course for gathering data on peoples movements.
It is not mentioned in the paper, but it is likely that they are using some sort of SDR like a USRP for receiving the signals. It's possible that a lower resolution system could be set up cheaply with a HackRF and some passive radar software.
Over the last few years researchers at Universidad Javeriana Bogotá, a University in Colombia, have been looking into using SDRs for aerial landmine detection. The research uses a USRP B210 software defined radio mounted on a quadcopter, together with two Vivaldi antennas (one for TX and one for RX). The system is then used as a ground penetrating radar (GPR). GPR is a method that uses RF pulses in the range of 10 MHz to 2.6 GHz to create images of the subsurface. When a transmitted RF pulse hits a metallic object like a landmine, energy is reflected back resulting in a detection.
Recently they uploaded a demonstration video to their YouTube channel which we show below, and several photos of the work can be found on their Field Robotics website. We have also found their paper available here as part of a book chapter. The abstract reads:
This chapter presents an approach for explosive-landmine detection on-board an autonomous aerial drone. The chapter describes the design, implementation and integration of a ground penetrating radar (GPR) using a software defined radio (SDR) platform into the aerial drone. The chapter’s goal is first to tackle in detail the development of a custom designed lightweight GPR by approaching interplay between hardware and software radio on an SDR platform. The SDR-based GPR system results on a much lighter sensing device compared against the conventional GPR systems found in the literature and with the capability of re-configuration in real-time for different landmines and terrains, with the capability of detecting landmines under terrains with different dielectric characteristics.
Secondly, the chapter introduce the integration of the SDR-based GPR into an autonomous drone by describing the mechanical integration, communication system, the graphical user interface (GUI) together with the landmine detection and geo-mapping. This chapter approach completely the hardware and software implementation topics of the on-board GPR system given first a comprehensive background of the software-defined radar technology and second presenting the main features of the Tx and Rx modules. Additional details are presented related with the mechanical and functional integration of the GPR into the UAV system.
Aerial landmine detection using SDR-based Ground Penetrating Radar and computing vision
PiAware Radar is a Python script that connects to your PiAware server and uses the received ADS-B data to display a familiar radar-like display (green circle with rotating radius, and aircraft displayed as blips). PiAware is the software used to take ADS-B data from an RTL-SDR dongle running on a Raspberry Pi and feed flightaware.com. A radar-like display is probably not very useful, but it could be used to set up an interesting display that might impress friends. Over on his blog IT9YBG has uploaded a tutorial that shows how to set PiAware Radar up on a Raspberry Pi.
Also on his blog IT9YBG has uploaded another tutorial that shows how to set up 1090XHSI, which is a program that displays an 737 aircraft cockpit simulation using live ADS-B data. The ADS-B data updates the instrument displays in real time, giving you a view of exactly what the pilots might be seeing on their dashboard of their aircraft. We posted about this software in the past, but IT9YBG's tutorial helps make it much easier to set up.
Over on YouTube user Albert Schäferle has uploaded a short video showing his reception of some radar pulses and their corresponding echoes. He uses rtl_fm and pipes the output into Baudline which is used to display the radar waveform. On the video description he writes:
Receiving direct and (supposedly) reflected pulses from an L-band radar in Učka, HR (Lockheed Martin AN/FPS-117). The receiving station was 83 km away, with clear LOS.
Center frequency is 1258 MHz (one out of four that this frequency-agile radar head is using).
The receiver is a RTL-SDR dongle (R820T tuner IC) with a 2-dipole collinear array (tuned for 403 MHz) and approx 7 m of Belden 1694A RG-6 coax.
rtl_fm output was piped to baudline, which is the software shown in the video. The IQ sampling rate is 2 MHz; the transform is a complex STFT (size=2048 samples, Blackman window).
This is a 0.008x speed playback of 15 ms of recording.
The (again, supposedly) reflected pulses are obviously more time-local with a shorter transform window size, e.g. 512 samples http://i.imgur.com/sAHWhwD.png
The effect of pulse compression is quite evident http://www.radartutorial.eu/08.transm…
The direct-reflected delay is approx 278 µs (~42 km from receiver, in a simple 2D, along beam, normal incidence model). I should add that this “reflection delay” effect does not usually show up.
There’s another fainter echo closer to the pulse, but I suspect that it could be a time-sidelobe of the main pulse: a side effect of pulse compression. Anyway, I must state that I have no formal knowledge on radar topics. So you’d better take all this with a grain of salt 😉
The beta version of the popular ADS-B decoding software RTL1090 has been updated to version 3. Version 3 comes with a simple radar visualization scope built into the software, which allows you to see aircraft directly in the RTL1090 software.
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!
In order to do this he used the Linux based dump1090 ADSB-B decoder and hub software on his main PC. Lui was even able to compile and run the ADS-B hub portion of dump1090 on his Windows PC using Cygwin, but was unable to get the decoder part to work. It doesn’t matter though because the dump1090 hub can receive data from any ADSB decoder, such as ADSB#. His results look very promising as can be seen by the timelapse of plane traces in the image below.