GNU Radio

GNU Radio is the most widely used and supported software package used with Software Defined Radio (SDR). It is extremely powerful and primarily aimed at research into transmitting and receiving specialised signal types. For this reason it is quite complex and has a somewhat steep learning curve.

The GNU Radio suite is composed of a number of blocks, each performing a specialised task (such as receiving data from an SDR device or demodulating a particular transmission mode.) By combining these blocks together into a flow graph, a full demodulator/decoder can be built (starting from the radio device all the way to either audio output or displaying decoded digital data.)

The flow graphs are built in the Python programming language, however it is not necessary to know any Python to create them. GNU Radio includes a program called gnuradio-companion which provides a neat graphical interface allowing Python flow graphs to be built by simply dragging boxes around on the screen.