GNU Radio is a free & open source software development toolkit that provides signal processing blocks to implement software-defined radio systems. 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.
GNU Radio applications are primarily written using the Python programming language, while the supplied performance-critical signal processing path is implemented in C++ using processor floating-point extensions, where available. Thus, the developer is able to implement real-time, high-throughput radio systems in a simple-to-use, application-development environment.
GNU Radio supports development of signal processing algorithms using pre-recorded or generated data, avoiding the need for actual RF hardware.
GNU Radio is a signal processing package, which is distributed under the terms of the GNU General Public License. All of the code is copyright of the Free Software Foundation. The goal is to give ordinary software people the ability to 'hack' the electromagnetic spectrum, that is, to understand the radio spectrum and think of clever ways to use it.
As with all software-defined radio systems, reconfigurability is the key feature. Instead of purchasing multiple expensive radios, a single generic radio is purchased which feeds signal processing software. Currently only a few forms of radio can be processed in GNU Radio but if one understands the math of a radio transmission system, one can reconfigure GNU Radio to receive it.
The GNU Radio project utilizes the Universal Software Radio Peripheral (USRP) which is a computer-based transceiver containing four 64 mega sample-per-second (MS/s) 12-bit analog-to-digital (A to D) converters, four 128 MS/s 14-bit digital-to-analog (D to A) converters, and support circuitry for the interface to the host computer. Depending on the model, the host-to-USRP interface is either USB 2.0 or Gigabit Ethernet. The USRP can process signals up to 25-MHz wide, depending on the model. Several transmitter and receiver plug-in daughter boards are available covering various bands between 0 and 5.9 GHz. The USRP was developed by Matt Ettus.
In order to run GNU Radio on a Macintosh operating system, one can install a package manager such as MacPorts to download and compile the source code.
Read more about GNU Radio: History, Version History
Famous quotes containing the word radio:
“Local television shows do not, in general, supply make-up artists. The exception to this is Los Angeles, an unusually generous city in this regard, since they also provide this service for radio appearances.”
—Fran Lebowitz (b. 1950)