Skip to content
Josh Blum edited this page Sep 28, 2015 · 37 revisions

Soapy plugins for OsmoSDR devices

https://raw.githubusercontent.com/wiki/pothosware/SoapyOsmo/images/soapy_sdr_osmo_logo.png

This is a plugin module for Soapy SDR for various gr-osmosdr supported devices. In addition, Soapy SDR devices can be used from the gr-osmosdr interface when gr-osmosdr is compiled with Soapy SDR support. The following devices can be used from the SoapySDR API and software that supports SoapySDR:

  • rtl dongle -- official RTL-SDR support will soon be supported through the RTL-SDR support module.
  • miri sdr
  • hackrf -- official RTL-SDR support will soon be supported through the RTL-SDR support module.
  • bladerf -- Blade RF support is now available through the BladeRF support module. To use SoapyOsmo for Blade RF support, configure with -DUSE_OSMO_BLADERF=ON
  • rfspace
  • airspy

Pre-built installers for various systems are available through the Pothos SDR environment.

Note: Even though we are based off of gr-osmosdr, GNU Radio is not a dependency.

Recommended apt-get install instructions for Ubuntu:

sudo apt-get install libboost-all-dev

The CMake build system will locate boost and SoapySDR development files on your system. Plugin modules will be built for every supported device to which a hardware driver can be located.

git clone https://github.com/pothosware/SoapyOsmo.git
cd SoapyOsmo
mkdir build
cd build
cmake ..
make
sudo make install

Use the SoapySDRUtil application to see if SoapySDR can detect your device. In this example, lets use the --probe option to print information about the RTL SDR device:

SoapySDRUtil --probe="driver=rtl"
######################################################
## Soapy SDR -- the SDR abstraction library
######################################################

Probe device driver=rtl
Using device #0 Realtek RTL2838UHIDIR SN: 00000001
Found Rafael Micro R820T tuner

----------------------------------------------------
-- Device identification
----------------------------------------------------
  driver=rtl
  hardware=rtl

----------------------------------------------------
-- Peripheral summary
----------------------------------------------------
  Channels: 1 Rx, 0 Tx
  Timestamps: NO

----------------------------------------------------
-- RX Channel 0
----------------------------------------------------
  Full-duplex: YES
  Antennas: RX
  Full gain range: [0, 49.6] dB
    LNA gain range: [0, 49.6] dB
  Full freq range: [24, 1766] MHz
    RF freq range: [24, 1766] MHz
    CORR freq range:  MHz
  Sample rates: [0.25, 2.56] MHz

Soapy SDR devices can also be used from the gr-osmosdr interface. This allows any device with a Soapy SDR plugin to be usable as a GNU Radio block or in an application that uses gr-osmosdr. Simply install Soapy SDR before configuring gr-osmosdr, Soapy SDR should be one of the configured components.