HOME

TheInfoList



OR:

GNU Radio is a
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, n ...
development toolkit that provides signal processing blocks to implement
software-defined radio Software-defined radio (SDR) is a radio communication system where components that have been traditionally implemented in analog hardware (e.g. mixers, filters, amplifiers, modulators/demodulators, detectors, etc.) are instead implemented by ...
s and signal-processing systems. It can be used with 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.


Overview

The GNU Radio software provides the framework and tools to build and run software radio or just general signal-processing applications. The GNU Radio applications themselves are generally known as "flowgraphs", which are a series of signal processing blocks connected together, thus describing a data flow. As with all
software-defined radio Software-defined radio (SDR) is a radio communication system where components that have been traditionally implemented in analog hardware (e.g. mixers, filters, amplifiers, modulators/demodulators, detectors, etc.) are instead implemented by ...
systems, reconfigurability is a key feature. Instead of using different radios designed for specific but disparate purposes, a single, general-purpose, radio can be used as the radio front-end, and the signal-processing software (here, GNU Radio), handles the processing specific to the radio application. These flowgraphs can be written in either
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
or
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
. The GNU Radio infrastructure is written entirely in C++, and many of the user tools (such as GNU Radio Companion) are written in Python. GNU Radio is a signal-processing package and part of the
GNU Project The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collabor ...
. It is distributed under the terms of the
GNU General Public License The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general ...
(GPL), and most of the project code is copyrighted by the
Free Software Foundation The Free Software Foundation (FSF) is a 501(c)(3) non-profit organization founded by Richard Stallman on October 4, 1985, to support the free software movement, with the organization's preference for software being distributed under copyleft ( ...
.


History

First published in 2001, GNU Radio is an official
GNU package A number of notable software packages were developed for, or are maintained by, the Free Software Foundation as part of the GNU Project. What it means to be a GNU package Summarising the situation in 2013, Richard Stallman identified nine aspects ...
. Philanthropist
John Gilmore John Gilmore may refer to: * John Gilmore (activist) (born 1955), co-founder of the Electronic Frontier Foundation and Cygnus Solutions * John Gilmore (musician) (1931–1995), American jazz saxophonist * John Gilmore (representative) (1780–1845) ...
initiated GNU Radio with the funding of $320,000 (US) to
Eric Blossom Eric Blossom is the founder of the GNU Radio project. GNU Radio is a free software toolkit for building software-defined radio and signal processing Signal processing is an electrical engineering subfield that focuses on analyzing, modifying ...
for code creation and project-management duties. GNU Radio began as a
fork In cutlery or kitchenware, a fork (from la, furca 'pitchfork') is a utensil, now usually made of metal, whose long handle terminates in a head that branches into several narrow and often slightly curved tine (structural), tines with which one ...
of the Pspectra code that was developed by the SpectrumWare project at the
Massachusetts Institute of Technology The Massachusetts Institute of Technology (MIT) is a private land-grant research university in Cambridge, Massachusetts. Established in 1861, MIT has played a key role in the development of modern technology and science, and is one of th ...
(MIT). In 2004, a complete rewrite of GNU Radio was completed, so today GNU Radio no longer has any original Pspectra code. Matt Ettus joined the project as one of the first developers, and created the
Universal Software Radio Peripheral Universal Software Radio Peripheral (USRP) is a range of software-defined radios designed and sold by Ettus Research and its parent company, National Instruments. Developed by a team led by Matt Ettus, the USRP product family is commonly used ...
(USRP) to provide a hardware platform for use with the GNU Radio software. In 2004, Matt founded Ettus Research LLC and began selling USRPs that worked with GNU Radio. In September 2010,
Eric Blossom Eric Blossom is the founder of the GNU Radio project. GNU Radio is a free software toolkit for building software-defined radio and signal processing Signal processing is an electrical engineering subfield that focuses on analyzing, modifying ...
stepped down as Project Lead and was replaced by Tom Rondeau. Early in the project, the core developers began holding semi-annual ''Hackfests''. In 2011, the GNU Radio project began holding a yearly conference, called "GRCon", which generally has a ''Hackfest'' on the last day of the conference. In March 2016, Tom Rondeau stepped down and was replaced by Ben Hilburn as the Project Lead, and Johnathan Corgan, a long-time maintainer, as the Chief Architect. In January 2018, Johnathan Corgan retired from his role as Chief Architect and was replaced by Marcus Müller. In September 2020, GNU Radio became part of the
SETI Institute The SETI Institute is a not-for-profit research organization incorporated in 1984 whose mission is to explore, understand, and explain the origin and nature of life in the universe, and to use this knowledge to inspire and guide present and futu ...
(a non-profit, multi-disciplinary research and education organization) for all financial and contractual purposes. In October 2020, Ben Hilburn and the project officers at the time voted to reorganize the GNU Radio Project's leadership, forming a General Assembly with a set of by-laws that regulate details of how the organization operates. A three-member Board made up of elected General Assembly members took over the roles previously handled by the Project Lead.


Software


GNU Radio Companion

The GNU Radio Companion is a graphical UI used to develop GNU Radio applications. This is the front-end to the GNU Radio libraries for
signal processing Signal processing is an electrical engineering subfield that focuses on analyzing, modifying and synthesizing '' signals'', such as sound, images, and scientific measurements. Signal processing techniques are used to optimize transmissions, ...
. GRC was developed by Josh Blum during his studies at
Johns Hopkins University Johns Hopkins University (Johns Hopkins, Hopkins, or JHU) is a private research university in Baltimore, Maryland. Founded in 1876, Johns Hopkins is the oldest research university in the United States and in the western hemisphere. It consi ...
(2006-2007), then distributed as
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, n ...
for the ''October 2009 Hackfest''. Starting with the 3.2.0 release, GRC was officially bundled with the GNU Radio software distribution. GRC is effectively a Python code-generation tool. When a flowgraph is "compiled" in GRC, it generates Python code that creates the desired GUI windows and widgets, and creates and connects the blocks in the flowgraph. GRC currently supports GUI creation using the
Qt toolkit Qt (pronounced "cute") is cross-platform software for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms such as Linux, Windows, macOS, Android or embedded systems wi ...
.


Plotting and Displays

GNU Radio provides many common plotting and data visualization data sinks, including FFT displays, symbol constellation diagrams, and scope displays. These are commonly used both for debugging radio applications and as the user-interface to a final application.


PyBOMBS

Many users create "out-of-tree modules" for use with GNU Radio. To manage these, and the dependencies required to run GNU Radio, the organization created the PyBOMBS (Python Build Overlay Managed Bundle System) project.


See also

*
Software-defined radio Software-defined radio (SDR) is a radio communication system where components that have been traditionally implemented in analog hardware (e.g. mixers, filters, amplifiers, modulators/demodulators, detectors, etc.) are instead implemented by ...
*
Universal Software Radio Peripheral Universal Software Radio Peripheral (USRP) is a range of software-defined radios designed and sold by Ettus Research and its parent company, National Instruments. Developed by a team led by Matt Ettus, the USRP product family is commonly used ...


References


External links

*
GNU Radio
in the
Free Software Directory The Free Software Directory (FSD) is a project of the Free Software Foundation (FSF). It catalogs free software that runs under free operating systems—particularly GNU and Linux. The cataloged projects are often able to run in several other op ...
{{DEFAULTSORT:Gnu Radio Amateur radio software for Linux Amateur radio software for macOS Amateur radio software for Windows Free communication software Free software programmed in Python
Radio Radio is the technology of signaling and communicating using radio waves. Radio waves are electromagnetic waves of frequency between 30  hertz (Hz) and 300  gigahertz (GHz). They are generated by an electronic device called a tr ...
Linux audio video-related software Software forks Software that uses Qt Software-defined radio