GNU Radio 3.10 has already been released and these are its news

GNURadio

After a year of development announced the release of the new version major free digital signal processing platform GNURadio 3.10

For those who are unaware of the platform, they should know that this includes a set of programs and libraries that allow you to create arbitrary radio systems, Modulation schemes and the shape of signals received and sent are configured in software, and simple hardware devices are used to capture and generate signals.

In combination with universal programmable transceivers that are not tied to the frequency band and type of signal modulation, the platform can be used to create devices such as base stations for GSM networks, devices for remote reading of RFID tags (IDs and electronic passes, smart cards), GPS receivers, WiFi, FM radio receivers and transmitters, TV decoders, passive radars, spectrum analyzers, etc.

In addition to USRP, the package may use other hardware components for signal input and output, For example, drivers are available for Sound Cards, TV Tuners, BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP, and S-Mini devices.

Main new features of GNU Radio 3.10

In this new version that is presented a new module gr-pdu has been added, which brings tools to manipulate objects with type PDU (Protocol Data Unit) used to transfer data between GNU Radio blocks.

from the module gr-blocks, all PDUs have been moved to gr-network and gr-pdu modules, and a layer has been left in place of gr-blocks to ensure backwards compatibility. Vector PDU types are now available in the gr::types namespace and PDU manipulation functions in the gr::pdu namespace.

A new module has been added gr-iio which provides an I/O framework to organize data exchange between GNU Radio and industrial devices based on the IIO (Industrial I/O) subsystem, such as PlutoSDR, AD-FMCOMMS2-EBZ, AD-FMCOMMS3-EBZ, AD-FMCOMMS4-EBZ, ARRADIO and AD-FMCOMMS5-EBZ.

It has been proposed experimental support for the Custom Buffer class, which simplifies data transfer between GNU Radio blocks and GPU-, FPGA-, and DSP-based hardware accelerators. Using custom_buffer avoids writing special blocks to enable acceleration on the GPU side and makes it possible to move data directly from GNU Radio’s circular buffer to GPU memory, execute CUDA cores, and return data with the result to the buffers. from GNURadio.

The logging infrastructure was changed to use the spdlog library, which improved logging usability by removing calls to iostream and cstdio, providing support for libfmt expressions to format strings, and modernizing the programming interface. The previously used Log4CPP library was removed from the dependencies.

It has been done transition to use in the development of the C++17 standard. The boost::filesystem library has been replaced by std::filesystem.

has been addedo support for Qt 6.2 to the blocks to build the graphical interface gr-qtgui. The “–output” option for hierarchical blocks has been added to the GRC (GNU Radio Companion) GUI.

Finally, if you are interested in knowing more about this new released version, you can consult the details In the following link.

How to install GNU Radio on Ubuntu and derivatives?

For those who are interested in being able to install this new version, At the moment they must compile their source codesince it is not yet available within the Ubuntu repositories.

Before that we must install the dependencies necessary for its operation, we install these by opening a terminal in the system (you can do it with the key combination Ctrl + Alt + T) and in it you are going to type the following:

sudo apt install git cmake g++ libboost-all-dev libgmp-dev swig python3-numpy 

python3-mako python3-sphinx python3-lxml doxygen libfftw3-dev libcomedi-dev 

libsdl1.2-dev libgsl-dev libqwt-qt5-dev libqt5opengl5-dev python3-pyqt5 

liblog4cpp5-dev libzmq3-dev python3-yaml python3-click python3-click-plugins

After that we will only have to type the following to download the source code:

git clone --recursive https://github.com/gnuradio/gnuradio.git

cd gnuradio

mkdir build

cd build

And finally we are going to compile by typing the following commands one by one:

cmake ../

make

make test

sudo make install

Add Comment