Drifting an RC Car with Computer Control and a HackRF

Over on Hackaday we’ve seen a post showing how HackRF experimenter Thomas was able to control his radio controlled car with a HackRF. With some simple control curves programmed in, he is then able to use the computer and HackRF to create the perfect drift maneuver with the car.

Watson has uploaded the code to GitHub under the name monster-drift. The code is based on Node.js which is an event-driven JavaScript programming environment. The software allows you use a HackRF to control any radio controlled car that uses a simple On-Off Keying (OOK) protocol and which operates at a frequency of 27 MHz. Most cheap RC cars do use this frequency and protocol, but high-end models may use something a little more sophisticated. Some information about the protocol implementation is given here. We look forward to hopefully seeing interesting projects like remotely controlled autonomous RC cars in the future.

HDSDR Updated to Version 2.76

The popular HDSDR software has recently been updated to version 2.76. After a three year hiatus the HDSDR developers are back in action starting with the 2.75 update which was released in early January. The 2.76 stable version released February 02, 2017 is a minor update with several bugfixes and a few new features. The 2.76 changelog is posted below:

Version 2.76 (February 02, 2017)

– switchable display mode: S-units / dBm
– switchable mode for S-meter: RMS / Peak
– enhanced accuracy of level indicators. New calibration required!
– periodic and explicit level logging into .CSV file
– switching AGC to off, sets manual gain value
– oversteering/clipping audio does now reduce gain value – not volume
– fixed OmniRig handling: “MuteOnTX”
– deactivate AFC after frequency/mode changes for a small duration
– Fast WAV file demodulation & recording
– some new keyboard shortcuts
– some other small improvements and fixes

Of interested are the new keyboard shortcuts which should improve efficiency with the program.

The 2.76 HDSDR Control Panel
The 2.76 HDSDR Control Panel

Decoding DAB with an RTL-SDR and SDR-J On an Odroid C2

The Odroid C2 is a $40 USD single board computer with a 1.5 GHz ARM-A53 quad core CPU and 2 GB of RAM. Compared to a Raspberry Pi 3 it is more powerful and costs almost the same. YouTube uploader radio innovation recently wrote into us and wanted to share his video showing SDR-J decoding DAB+ smoothly on his Odroid C2. It seems that SDR-J works perfectly and only uses a small amount of CPU.

DAB stands for Digital Audio Broadcast and is a replacement/alternative to standard broadcast FM stations. SDR-J is a software suite that includes a DAB decoder for the RTL-SDR. It is compatible with Windows, Linux and the Raspberry Pi (and evidently also the Odroid C2). Over on their website they also provide a ready to go Raspberry Pi 2 image, and they write that it should perform well on the Rpi2 platform as well.

We’ve also seen that there is a new variant of SDR-J for the Raspberry Pi (and potentially other similar devices) available on GitHub. This one has a nice touch screen friendly GUI, which should be useful for creating a cheap portable DAB device.

Alternative SDR-J Raspberry Pi GUI
New SDR-J Variant for the Raspberry Pi with nice GUI

Radioforeveryone New Posts: PiAware Step-By-Step Guide and a Guide to Feeding Other ADS-B Aggregrators

Akos from the radioforeveryone.com blog has recently uploaded some new posts. The first post is a tutorial on setting up a PiAware server with an RTL-SDR. PiAware is the official ADS-B feeder software from FlightAware.com, which is a web service that provides real time tracking of aircraft. Most of the flight data comes from volunteers around the world running a PiAware server with an RTL-SDR, ADS-B antenna and Raspberry Pi. The installation is fairly simple, involves burning an SDcard with the PiAware image, setting up the WiFi and then seeing your receiver online on the PiAware website. From there you can then configure the device further.

In the second post Akos describes how to feed other tracking websites, e.g. not just FlightAware, but also similar sites like Planefinder.net and flightradar24.com. Akos has also mentioned that a single Raspberry Pi can be used to feed all three aggregators simultaneously.

FlightAware vs FlightRadar24 vs Planefinder Plots
FlightAware vs FlightRadar24 vs Planefinder Plots

A Multichannel FM Demodulator

A few days ago programmer Phil V wrote in and wanted to let us know about his tsl-sdr MultiFM software for the RTL-SDR. This is a Python based command line program which is somewhat similar to rtl_fm, but the difference is that MultiFM allows for multiple FM audio streams to be demodulated simultaneously. Phil writes:

This is supposed to be of interest to people who might want to demodulate multiple channels to feed different parts of a monitoring workflow. This is fed by an rtlsdr in my “production” configuration, so I figure it’s relevant to your blog.

While this is something that can be done with GNUradio, there are a few things that make this unique:

1) All the calculations are done using fixed point arithmetic. This means the application runs efficiently even in low-resource systems. The intensive calculations are optimized using NEON for ARM, since my target platform is ARM-based.

2) The external dependencies are very minimal. libjansson (a JSON parser) is the only run-time dependency. ConcurrencyKit and Python are all you need to build it. This makes it fit nicely into embedded systems.

3) The behavior of the application can be set and modified based on configuration parameters only. Filter kernels, sampling requirements, and channels are all set using this configuration file, which is easy-to-understand JSON.

I’m using this as a part of a larger project that monitors multiple frequencies in a narrow 1 MHz then feeds the data into an analysis system in the cloud.

The code is also intended to be easy to understand and follow, so anyone who is trying to learn DSP and how to build these things should be able to pick it up.

The software looks quite useful especially as we have not seen many lightweight command line multichannel decoders for the RTL-SDR yet. The closest thing we’d seen previously was RTL-Airband which is designed for monitoring up to eight AM airband channels and streaming them to the internet as an MP3, but can also be used for NFM.

Phil has indicated that he may write more tutorials on MultiFM’s use in the future, for example showing how to monitor multiple 4FSK channels.

Camp++ YouTube Talk: GSM Signal Sniffing for Everyone with GR-GSM and Multi-RTL

Over on YouTube the channel Budapest Hackerspace has recently uploaded a talk by Piotr Krysik which was given during the August 2016 Camp++ 0x7e0 information security conference. The talk is titled: “GSM signal sniffing for everyone with gr-gsm and Multi-RTL by Piotr Krysik” and talks about using the gr-gsm software and RTL-SDR dongles to sniff the GSM mobile phone network. Also, a tool developed by Piotr called multi-rtl which allows the proper synchronization of multiple RTL-SDR dongles in order to cover the large gap between the GSM uplink and downlink frequencies is discussed.

The talk explains a bit about how GSM works, and then goes on to talk about the gr-gsm and multi-rtl software. The talk blurb reads:

Gr-gsm is a set of tools for receiving GSM transmissions, which works with any software radio hardware capable of receiving GSM signal. Together with widely available RTL2832 based TV dongles, that are popularly used as low cost software radio receivers (known as RTL-SDR), it enables everyone to receive and study protocols used in GSM’s mobile radio interface.

Ability to receive signals spread over wide frequency range exceeding single RTL-SDR receiver’s bandwidth (~2.4MHz) was available exclusively for the owners of more capable and more expensive SDR devices. With introduction of Multi-RTL project by the author of the talk, this limit was overcome through synchronization of multiple RTL-SDR receivers in time domain, that doesn’t require complicated hardware modifications. With Muli-RTL it is possible to receive for example uplink and downlink of GSM900 transmissions, that are separated by 45MHz.

Speaker will present origins of both of the projects, together with description of their inner workings, examples of applications and plans for the future.

The talk slides can be downloaded here.

A Tutorial on Receiving WSPR with an RTL-SDR V3

Over on YouTube user Veryokay has uploaded a video that shows how he uses the HF direct sampling mode on one of our V3 RTL-SDR’s to receive WSPR signals. WSPR (pronounced “Whisper”) is short for Weak Signal Propagation Reporting, and is a HF ham mode typically run on very low power levels such as 1W. The data from WSPR reception can be used to determine how good or bad HF propagation is currently around the world as each WSPR message contains the callsign, 6-digit locator and the transmit power level used.

For the antenna Veryokay uses a simple random wire antenna directly connected to the SMA port of the V3 up on top of the roof of his apartment building. This gets him reception good enough to receive many WSPR signals. Then together with SDR#, VB Cable and the WSPR-X decoder software, signals can be received and decoded.

He has also uploaded a document detailing the instructions in text and image form at bit.ly/wspr-rtlsdr.

Hak5 at Shmoocon 2017: Shock Collar Radio Roulette, GNU Radio, Sniffing IR (Terrahertz) Signals and More!

Over on YouTube the popular Hak5 channel has uploaded a video with several SDR related topics mentioned during Shmoocon 2017 conference.

One fun event talked about in the video was the Shmoocon wireless village SDR contest by Russell Handorf which involved wireless dog shock collars. These are collars usually placed on dogs, that emit a mild electric shock when a button on a wireless remote is pressed. This can help train the dog into better behaviors. Contestants were able to first make recordings of the wireless signals made by the shock collars. Then each contestant strapped a wireless shock collar to their leg and the goal was then to reverse engineer and understand the protocol as quickly as possible, then use that knowledge and a HackRF to shock the other contestants.

Another part of the video discuss GNU Radio reverse engineering with representatives from bastille.net who are wireless IoT security researchers. The video then goes on to interview Micheal Ossmann (creator if the HackRF) who talks a bit about his work in building an infrared (IR) software defined radio. Micheal explains how infrared is essentially just radio at terrahertz frequencies and that many SDR concepts can be applied by using a photodiode sensor. He mentions that there are several IR systems used these days, such as the common remote control, toys, and high bandwidth wireless IR headphones used in car entertainment systems and conferences. The hardware Micheal has created is called “Gladiolus” and is still in development.