Po šiestich rokoch od posledného významného vydania uvoľnenie , voľnej platformy pre digitálne spracovanie signálov. GNU Radio je súbor programov a knižníc, ktoré umožňujú vytvárať ľubovoľné rádiové systémy, modulačné schémy a formy prijímaných a odosielaných signálov, ktoré sú programovo definované, pričom na zachytávanie a generovanie signálov sa používajú jednoduché hardvérové zariadenia. Projekt je licencovaný pod GPLv3. Kód väčšiny komponentov GNU Radio je napísaný v jazyku Python, kritické časti z hľadiska výkonu a oneskorenia sú napísané v jazyku C++, čo umožňuje použiť balík pri riešení úloh v reálnom čase.
V kombinácii s univerzálnymi programovateľnými vysielačmi a prijímačmi, ktoré nie sú viazané na frekvenčné pásmo a typ modulačného signálu, môže byť platforma použitá na vytváranie zariadení ako sú základne pre GSM siete, zariadenia na diaľkové čítanie RFID značiek (elektronické identifikačné a vstupné karty, smart karty), GPS prijímače, WiFi, prijímače a vysielače FM rádia, TV dekodéry, pasívne radary, spektrálne analyzátory atď. Okrem USRP môže balík využívať aj ďalšie hardvérové komponenty na vstup a výstup signálov, napríklad ovládače pre zvukové karty, TV tunery, zariadenia BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP a S-Mini.
Súčasťou je aj zbierka filtrov, kanálových kodekov, synchronizačných modulov, demodulátorov, ekvalizérov, hlasových kodekov, dekodérov a iných prvkov potrebných na vytvorenie rádiových systémov. Uvedené prvky môžu byť použité ako tehličky na zostavenie hotového systému, čo v kombinácii s možnosťami určovania prúdov dát medzi blokmi umožňuje navrhovať rádiové systémy aj bez programátorských zručností.
Hlavné zmeny:
- Prešlo sa na používanie pri vývoji štandardu C++11 a build systému CMake. Štýl kódu bol zladený s clang-format;
- Medzi závislosti patria MPIR/GMP, Qt5, gsm a codec2. Aktualizovali sa požiadavky na verzie závislostí CMake, GCC, MSVC, Swig, Boost. Závislosti libusb, Qt4 a CppUnit boli odstránené;
- Zabezpečila sa kompatibilita s Python 3, ďalšia verzia GNU Radio 3.8 bude posledná, ktorá podporuje Python 2;
- V gnuradio-runtime bola prepracovaná spracovanie desatinných hodnôt tagov „time“ v kontexte použitia s modulmi predoskrétovania;
- Grafické rozhranie (GNU Radio Companion) bola pridaná voliteľná podpora generovania kódu v C++, namiesto XML bol použitý formát YAML, odstránený blks2, významne vylepšené nástroje na prácu s plátnom a pridaná podpora zaoblených šípok;
- Grafické rozhranie gr-qtgui bolo prevedené z Qt4 na Qt5;
- V gr-utils bola výrazne vylepšená utilita gr_modtool. Zloženie bolo zbavené utilít na báze PyQwt;
- Podpora modulov gr-comedi, gr-fcd a gr-wxgui bola ukončená.
Zdroj: opennet.ru
