Table of Contents

GNU Radio Companion

AKA: GRC

[NOTE: This page originated as notes for the September 2, 2019 session of the Linux User Net ]

This section documents my experience with GNU Radio Companion. All of my computers run Linux, so that's what is covered here. This software should work on Mac and Windows, as well.

I expect this page to be in a state of contstant revision as I record my experience with GRC and my SDR devices.

Preparation

References

Text

Video

Procedures

[Note: Follows along with Building Software Radios With A Little Bit Of Python,**Hak5 1526 (YT)]**

Plug in + test with rtl_sdr utilities

1) Plug in the dongle and run rtl_test to see whether there are packet losses. None.

2) Run rtl_fm, pipe output to aplay

rtl_fm -f 147.04e6 -s 240000 -r 96000 - | aplay -r 96000 -f S16_LE

Start working with GNU Radio Companion

3) Launch GNU Radio Companion

To be continued…

Notes so far

If you really want to understand Software Defined Radio, then get an SDR device and start using GNU Radio Companion. I recommend trying it even if you're not interested in SDR in particular, but just want to learn more about how radios work.

What the program does is to enable you to assemble a virtual radio by making a flow graph of functional blocks. Each block has inputs and outputs, which are chained together such that the output of one block is the input of the next block in line. You already know how this works — it's exactly the way Linux utilites are chained together in a shell command using pipes and redirection. The resulting graph constitues a functional model that can be executed in real time.

Each block in the graph represents some function essential to radio, such a demodulation and filtering. Although they are performed digitally on the computer when the model is run, it's worth keeping in mind that they are exactly the same the same functions that are performed by the electronic circuits of analog radios. This is a fantastic learning tool.

I also should mention that GRC is not limited to just radio. It can process any type of waveform, including audio and generated waves — sine, square, sawtooth. One thing I want to try is feeding in the audio output of one of my radios and running that through some DSP functions to see what I can do with it.

Software installed

On my laptop, from the Mint 19.2 repository:

Switched to the Debian 10 desktop, with the same software installed. Dark scheme worked fine in GRC. Having a 27-inch monitor is a nice bonus, compared to the 15-inch laptop screen.

Hardware

I have several SDR devices available for use in experimenting with GRC. I intend to try them all.