GreatFET and GNURadio
The GreatFET platform can easily interface with GNURadio – and several gnuradio-companion blocks are available to make using GreatFET+GNURadio easier. These blocks include support for various neighbors (e.g. Gladiolus blocks for Software Defined Infrared) and a variety of other inputs and outputs, which are lumped into the ‘Software Defined Everything’ category.
Requirements
You’ll need an up-to-date GNURadio environment to use our blocks. This means:
GNURadio >= 3.8, built with python3*
python 3.6+
It’s possible these blocks will work with GNURadio on lower python versions; but these aren’t our development targets and aren’t fully supported.
Adding our blocks to GNURadio-companion
The easiest way to add our blocks to GNURadio is to modify our local GNURadio configuration. On Linux and macOS, this file is located at ~/.gnuradio/config.conf
.
Open this file, and find the section that’s headed [grc]
; or create the relevant section if it doesn’t exist.
[grc]
<existing keys here>
We’ll want to add the location of our blocks to the configuration file’s local_blocks_path
. We can determine the location of our blocks using the gf info
command:
$ gf info --host
Host tools info:
host module version: 2019.5.1
pygreat module version: 2019.9.1
python version: 3.8.0 (default, Oct 23 2019, 18:51:26)
module path: /home/user/.local/lib/python3.8/site-packages/greatfet
command path: /home/user/.local/lib/python3.8/site-packages/greatfet/commands
gnuradio-companion block path: /home/user/.local/lib/python3.8/site-packages/greatfet/gnuradio
In the output above, the last line points out our GRC block path. We’ll add this to the local_block_path
entry in our configuration file:
[grc]
local_blocks_path = /home/user/.local/lib/python3.8/site-packages/greatfet/gnuradio
If you want to have multiple entries, here – for example, if existing entries are already present – you can separate multiple paths using colons, similar to Linux paths:
[grc]
local_blocks_path = /home/user/.local/lib/python3.8/site-packages/greatfet/gnuradio:/home/user/my_blocks
The next time you start GRC, you should see new headings (e.g. SDIR
and Software Defined Everything
) in your list of available blocks.