Early Results Using GNU Radio

Using GNU Radio with a custom receiving antenna may take longer to implement, but the end result can be closely tailored to the project’s needs while minimizing costs. Cheap hardware combined with free software ensures that the final cost of a ground station will be well below the high-end estimate of $1100. But can this low-cost approach achieve the fidelity and performance required to filter hundreds of Sprite signals sent from space, each powered solely by solar panels no wider than a fingernail?

In order to answer this question, it’s important to learn what exactly GNU Radio does. GNU Radio is a collection of signal processing software released under the GNU General Public License (GPL). Releasing software under the GPL ensures that users are free to use it for any purpose, change it to suit their needs, and share it along with any changes they make. The GNU General Public License falls into a category colloquially known as “copyleft,” the approximate opposite of “copyright.”

Combining GNU Radio and RF hardware creates a software defined radio (SDR). As I’ve mentioned previously, a SDR processes signals digitally rather than physically. Traditional, hardware-based radios use circuitry to process radio signals, and therefore cannot be easily adjusted or modified after assembly. A SDR can be adjusted at any time, since all of its “circuitry” is digital.

GNU Radio sees wide use with hobbyists, universities, companies, and governments for research and communication. For example, DARPA funded a modification of GNU Radio for IEEE 802.11 wireless local area network standards, and the University of Washington Quantum System Engineering Laboratory wrote code for magnetic resonance force microscopy using GNU Radio with funds from the Army Research Office. Additionally, there are countless third party applications of GNU Radio listed at CGRAN (Comprehensive GNU Radio Archive Network).

The majority of front-facing GNU Radio applications are built in Python, and most of its signal processing programs are implemented in C++ (both of which are languages I am experienced in). The Cornell team began hardware tests with their GNU Radio code in September using a European USB device designed for receiving HDTV.

The good news is that these devices only cost $20-$30. But can they identity and filter Sprite signals with an appropriate degree of fidelity? By using a software correlator of their own design to compare a Sprite’s signals with the expected Gold code ID, the team in Ithaca produced the following signal profile:

The correlator was able to clearly match the Sprite signal being received by the USB device to its Gold code ID, resulting in the sharp spike pictured above. Stay tuned for a more in-depth analysis of these Sprite signals and more information about the Gold code IDs that make it possible for many Sprites to send signals at once.

Leave a Reply