Skip to content
v1ne edited this page Mar 30, 2020 · 5 revisions

Soapy SDR plugin for SDR Play

https://raw.githubusercontent.com/wiki/pothosware/SoapySDRPlay/images/soapy_sdr_play_logo.png

The Soapy SDR Play project provides a plugin module to use the SDR Play device within the SoapySDR API and software that supports SoapySDR.

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

The CMake build system will locate mirsdrapi-rsp and SoapySDR development files on your system. The plugin module will be built and installed into the SoapySDR modules directories.

git clone https://github.com/pothosware/SoapySDRPlay.git
cd SoapySDRPlay
mkdir build
cd build
cmake ..
make
sudo make install
SoapySDRUtil --probe="driver=sdrplay"
######################################################
##     Soapy SDR -- the SDR abstraction library     ##
######################################################

Probe device driver=sdrplay

----------------------------------------------------
-- Device identification
----------------------------------------------------
  driver=SDRplay
  hardware=1807058E93
  mir_sdr_api_version=2.130000
  mir_sdr_hw_version=255

----------------------------------------------------
-- Peripheral summary
----------------------------------------------------
  Channels: 1 Rx, 0 Tx
  Timestamps: NO
  Other Settings:
     * RF Gain Select - RF Gain Select
       [key=rfgain_sel, default=4, type=string, options=(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)]
     * IF Mode - IF frequency in kHz
       [key=if_mode, default=Zero-IF, type=string, options=(Zero-IF, 450kHz, 1620kHz, 2048kHz)]
     * IQ Correction - IQ Correction Control
       [key=iqcorr_ctrl, default=true, type=bool]
     * AGC Setpoint - AGC Setpoint (dBfs)
       [key=agc_setpoint, default=-30, type=int, range=[-60, 0]]
     * BiasT Enable - BiasT Control
       [key=biasT_ctrl, default=true, type=bool]
     * RfNotch Enable - RF Notch Filter Control
       [key=rfnotch_ctrl, default=true, type=bool]
     * DabNotch Enable - DAB Notch Filter Control
       [key=dabnotch_ctrl, default=true, type=bool]

----------------------------------------------------
-- RX Channel 0
----------------------------------------------------
  Full-duplex: YES
  Supports AGC: YES
  Stream formats: CS16, CF32
  Native format: CS16 [full-scale=32767]
  Antennas: RX
  Corrections: DC removal
  Full gain range: [0, 48] dB
    IFGR gain range: [20, 59] dB
    RFGR gain range: [0, 9] dB
  Full freq range: [0.01, 2000] MHz
    RF freq range: [0.01, 2000] MHz
    CORR freq range:  MHz
  Sample rates: 0.25, 0.5, 1, 2, 2.048, 6, 7, 8, 9, 10 MSps
  Filter bandwidths: 0.2, 0.3, 0.6, 1.536, 5, 6, 7, 8 MHz

In case your SDRPlay dongle is connect but you still get

Probe device driver=sdrplay
Error probing device: no sdrplay device found

Look at dmesg to see if your system has loaded device drivers for the SDR module. They are incompatible with the binary-only driver. Relevant output:

[20084.148384] msi2500 3-2:1.0: Registered as swradio0
[20084.148386] msi2500 3-2:1.0: SDR API is still slightly experimental and functionality changes may follow

In this case, edit /etc/modprobe.d/blacklist.conf and add:

blacklist sdr_msi3101
blacklist msi001
blacklist msi2500

Then, remove the offending modules and restart the module loading service (or whatever loads the modules on your Linux distribution):

sudo rmmod msi001 msi2500
sudo systemctl restart systemd-modules-load.service

As a last step, unplug and replug your SDRPlay dongle and try to probe it again with SoapySDRUtil.