Posted on by

The Waterfall Plot

Want to get your hands metaphorically dirty with some BLUEsat projects but don’t have enough cash to fund both your HECS debt and your rover? This is a project so simple to follow along that even an arts undergraduate can complete. We will be transforming radio signals that exist everywhere around you into a graph known as a Waterfall Plot. It will look something like this:


Leave this running on your computer for long enough that your mates walk by, they will think you’re tapping into Russian communications, and then land yourself an internship at Telstra.

Technically you can tap into Russian communications, its not a joke there, but other practical and less anti-facist applications include checking the signal strength in your network, interpretting packet radio, and listening to the Triple J hottest 100 (as shown in diagram).

 

So lets get started!

 

What you will need

You will need these to get started:

  • SDR (software defined radio)
  • Antenna
  • GNU Radio
  • Python
  • A Computer with at least 1 usb port

Software defined radios (SDR) are extremely handy pieces of equipment due to their size, cost and effectiveness. They connect via USB and only require an Antenna. We found a source that sells the model we will be using for only $20 which you can go to here.

GNU Radio is a python based open-source graphical tool to create signal flow graphs and generating flow-graph source code. We will be using GNU Radio to communicate with our SDR and it has the potential to do much much more. You can download their software here: www.gnuradio.org

Since GNU Radio will be operating in Python, it kind of makes sense to have Python. But what is Python? No it is not malware, so rest assured it won’t swallow up your operating system. Python is a widely used programming language, and the one that we will be using in this project. Make sure you get the right bit version by checking whether your downloaded version of GNU Radio runs on 64-bit or 32-bit. You can download it here: www.python.org

Here is an image of the SDR:

An SDR Compatible with GNU Radio

 

GNU Radio

Assuming that we have been successful up to this point in purchasing the equipment, downloading GNU Radio and setting up, we can begin creating our program.

A template that we will be using can be downloaded through this link. This will save time learning how to configure GNU Radio, however you may learn in your spare time how to add more powerful tools to improve and diversify from this template. Opening the file in the hyperlink will look like this.

The two main blocks that allows this program to function are the source block and sink block. The source block funnels the data from the SDR to GNU Radio and the sink block compiles the infomation to be displayed on a custom GUI. You may tweak the template as you gradually gain a better understanding of how the program works, including adding an audio sink which isn’t hard but that’s homework for you to figure out.

The last step is to compile and run the program, either by clicking the ‘play button’ or the F5 shortcut if you can’t find it. This will create a new window with the waterfall plot showing all the receivable frequencies in your range. The frequency slider on the bottom will allow you to adjust the centre frequency that you want to listen to.

So now you have your own cheap and miniature device for frequency capture! But now it is time to test it out on bigger and much more expensive equipment, like maybe a 2m antenna on top of the Electrical Engineering building…

Join BlueSat to participate in bigger and better projects than this by contacting us. Happy tapping into communications in the meantime!

Former BLUEsat President Tom Dixon with a groundstation antenna (do not hold operational antenna's this way!)