From Fedora Project Wiki

Revision as of 15:23, 23 April 2019 by Tuju (talk | contribs)

SDR on Fedora

This page is dedicated to furthering the development of SDR or software-defined-radio on Fedora. Currently, Fedora supports several of the major SDR platforms including HackRF and RTL-SDR. Other platforms may be supported, however these are the only two that been tested and confirmed to work. Below you will find instructions for installing GNU-Radio and the required drivers for your SDR platforms so that you can get on the air with Fedora as quickly as possible!

What is SDR?

SDR is physical radio-hardware that is controllable by digital-signal-processing software. Traditionally, an SDR is an analog-to-digital-converter (ADC) that is directly interfaced to a computer. The computer then samples the ADC a certain amount of times per second and passes the data it receives on to an audio decoder, waterfall plot, histogram, or any other program designed to handle digital-signals. This enables fast deployment of extremely-broadband radio systems with relative ease.

GNU Radio

From the GNU Radio "Overview" page:

"GNU Radio is a free software development toolkit that provides the signal processing runtime and processing blocks to implement software radios using readily-available, low-cost external RF hardware and commodity processors. It is widely used in hobbyist, academic and commercial environments to support wireless communications research as well as to implement 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, rapid-application-development environment."

Installing SDR Software on Fedora

To get started using SDR hardware on Fedora, you'll need to install GNU Radio and GNU Radio Companion (the GUI to GNU Radio), as well as the required drivers to run your SDR. The Fedora Project has a set of electronics packages bundled into a suite called 'Electronic Lab' that will install GNU Radio as well as many other electronics-related packages onto the host system. While you do not need to install 'Electronic Lab' to install GNU Radio, this guide will only cover installing GNU Radio from the Fedora repository through 'Electronic Lab'.

$ sudo dnf group install 'Electronic Lab'

At this time, the required drivers for SDR hardware are not contained in Fedora Electronic Lab, so these will need to be installed separately.

$ sudo dnf install rtl-sdr- gr-osmosdr-

Running this command will install the OsmocomSDR and the HackRF drivers for SDR hardware. See the OsmocomSDR site for a list of supported SDR hardware.

Software

  • gnuradio Software defined radio framework
    • gr-fcdproplus - GNURadio support for FUNcube Dongle Pro+.
    • gr-iio Gnuradio support Analog Devices ADALM-PLUTO SDR.
    • gr-iqbal GNURadio block can suppress IQ imbalance in the RX path of quadrature receivers.
    • gr-osmosdr - Common software API for various radio hardware
  • kalibrate-rtl
  • rtl-sdr RTL2832 based DVB-T dongle SDR receiver.
  • quisk SDR which can control various radio hardware. QUISK supports CW, SSB, and AM.
  • SoapySDR] - A Vendor Neutral and Platform Independent SDR Support Library
    • soapy-rtlsdr - SoapyRTLSDR is a module for SoapySDR adding support for RTL-SDR hardware.
  • gqrx - Software defined radio receiver powered by GNU Radio and Qt

See also

  • LimeSDR - LimeSDR-USB hardware support utilities