GNU Radio

From ArchWiki
Jump to navigation Jump to search

GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in hobbyist, academic and commercial environments to support both wireless communications research and real-world radio systems.

Packages

The latest stable GNU Radio version can be installed with gnuradio from the official repositories.

Bleeding edge is gnuradio-gitAUR in the AUR, and in some cases VOLK may need to be built separately from libvolk-gitAUR.

If you want gnuradio-companion, just install the gnuradio-companion package which will install GNU Radio, as well as some additional required packages.

Another popular package is gnuradio-osmosdr which provides the GRC source blocks for many of the popular SDR devices (Funcube Dongle, RTL-SDR, USRP, OsmoSDR, BladeRF and HackRF).

GUI

The core GNU Radio packages do not support flowgraphs with GUI widgets. For such flowgraphs it is recommended to install QT GUI support via python2-pyqt4AUR.

Usage of WX GUI is not recommended since it will be phased out in the 3.8 release of GNU Radio, will also include widget upgrades to QT5.

Troubleshooting

GetSize() doesn't work without window

If such errors occur when running flow graphs, make sure that the optional dependency python2-opengl is installed.

This should be fixed in the next GNU Radio release. [1]

TypeError: in method 'source_sptr_set_gain_mode', argument 2 of type 'bool'

When using an (osmocom) RTL-SDR source, you might see this error. The workaround is to manually set the Gain Mode to True or False.