Recently Zoltan of rfsparkling.com wrote in to us to show us how he combined efforts with András (programmer of the OpenWebRX software) to create a proof of concept remote spectrum monitoring drone. The drone uses an RTL-SDR connected to a Raspberry Pi, and the Raspberry Pi runs an OpenWebRX server which broadcasts the radio data via 4G mobile internet. The full connection flow chart goes as follows:
[Drone] Antenna –> RTL-SDR –> RPi 2 –> OpenWebRX Server –> 4G mobile net –> … Internet … [Notebook] –> 4G mobile net –> Browser with OpenWebRX client
Zoltan writes that some possible applications include emergency communications, ham radio, 3D spectrum mapping, etc. In the future he also hopes to add TX capabilities, so that the drone can also work a a makeshift transceiver tower. The biggest limitation that Zoltan noted is the flight time of only about 10 minutes. However, a solution he suggests for future experiments is using wire powered drones.
To reverse engineer the drones wireless communications system the teams used software defined radios like the HackRF and BladeRF, and also an alternative method involving just using an Arduino and nRF24L01+ receiver chip. Once the signal was received, they used GNU Radio to decode the signal into packets of data. After analyzing the data they found that the data bytes were easily reverse engineered and then were able to transmit their own data packets to control the drone. The post goes into further detail on the specifics of the reverse engineering.
Over on YouTube balint256 (Balint), a researcher at Ettus (creators of the USRP line of software defined radios) has uploaded a video showing how he is using his USRP to help with frequency management at FPV time trial racing events. FPV a.k.a First Person View is a term used to describe the act of flying a remote controlled aircraft such as a quadcopter with an onboard camera that transmits live video down to the pilot. FPV racing is a new sport where pilots race FPV controlled drones around a track.
One important technical challenge at these events is frequency management. FPV drones use many frequencies at around 2.4 GHz for control and 5.8/2.4/1.3 GHz for video. With many drones in the air it is important that frequencies are managed appropriately so as to not jam each others signals.
To try and solve this problem Balint has been using GNU Radio coupled with a USRP X310 software defined radio to get very wide band RF spectrum waterfall views of the 2.4 and 5.8 GHz bands. In the waterfalls he is able to see when control signals and video signals are transmitted and at what frequency, and is able to tell if any are overlapping and jamming each other.
SDR Wideband Spectrum Monitoring for Drone FPV Frequency Management
In addition to this, Balint has also been working on his custom software defined radio based digital video downlink. Back in March we posted about his earlier work on this concept. In the video Balint demonstrates his drone with an on board USRP E310 which is used to send a custom 4.2 Mbps video downlink.
SDR digital video downlink (custom drone FPV) with E310 + webcam
Balint, one of the researchers at Ettus Research (the company behind the USRP range of software defined radios) has recently uploaded a video to YouTube showing one of his projects where he is prototyping the use of a digital signal for transmitting digital FPV video on a drone. The drone carries a USRP E310 SDR and transmits a QPSK video down developed in GNU Radio to a receiver on the ground.
FPV strands for “first person view” and is a growing hobby where remote controlled aircraft such as quadcopter drones are flown in first person view using live video from an on board camera.
Drone + SDR: USRP E310 real-time digital video downlink (teaser)
In another video balint also shows how the on board E310 can be used to transmit frequency scan FFT data via a WiFi link. This can be very useful for getting an antenna up high enough to get good reception for a scan.
Over on YouTube user Mike has uploaded a video showing a quadcopter being controlled by the HackRF, a low cost transmit capable software defined radio. Mike uses a Hubson X4 quadcopter and controls it with a USB joystick coupled with GNU Radio. According to a tweet by Micheal Ossmann (the inventor of the HackRF), there were initially USB latency issues that caused problems, but have since been fixed by Mike.
Previously we posted about the Hak5 teams attempt to create an ADS-B quadcopter receiver which carried a coax collinear antenna, ran the ADS-B decoder dump1090 on board and then transmitted the decoded ADS-B data back to a laptop on the ground via WiFi. Their results were poor due to various factors.
In the latest video they read comments from fans which explain why they had such poor results, then apply some of those recommendations to a second experiment. Previously they had trouble keeping the WiFi connection alive due to poor reception, so now they use a WiFi Yagi to boost the signal strength. They also reduced the number of elements on their coax collinear antenna and moved away from the broadcast RF transmitter that they were near in their last video.
There isn’t a big increase in the number of planes picked up in the second experiment but it was much more successful compared to the first.
A Better Aircraft Seeking Drone Antenna, Hak5 1613
Over on YouTube, Hak5 a electronics enthusiast channel has posted a video showing an interesting ADS-B project they undertook.
The Hak5 team took a quadcopter up on top of a high mountain, attached to it a WiFi Pineapple (a small WiFi equipped Linux computer), an RTL-SDR dongle and a coax collinear antenna and then flew it up high. They ran dump1090, a Linux based ADS-B decoder on the WiFi pineapple and then broadcast the decoded information back to a laptop on the ground.
Although the results were less than favourable, it is still an interesting project to explore. Their poor results may be due to a nearby RF broadcast tower which could have been overloading the dongle, or EMF from the quadcopter motors.
Tracking Aircraft over 300 miles away! Mountain + Drone + SDR, Hak5 1609