RSP1 Clone SDR Notes (2025)

Notes to get RSP1 working on Linux and macOS using FOSS drivers (2025)

Reference photo

Please use a mainstream Linux distribution like Ubuntu 24.04 LTS (or later) or the latest Raspberry Pi OS.

Using a Raspberry Pi is NOT recommended as it has quite a bit of power supply noise on the USB ports, which reduces the performance of the connected SDR.

On Linux, add the following lines to the /etc/modprobe.d/blacklist.conf file

blacklist sdr_msi3101
blacklist msi001
blacklist msi2500

Execute the following command:

sudo systemctl restart systemd-modules-load.service

Install dependencies:

sudo apt-get install libsoapysdr0.8-dev libsoapysdr0.8 libsoapysdr-dev \
    soapysdr-tools build-essential sox cmake libusb-1.0-0-dev -y

NB: Do NOT install the official SDRplay crappy software.

Remove the problematic mirisdr stuff:

sudo dpkg -r soapysdr0.8-module-mirisdr soapysdr0.8-module-all \
  soapysdr0.8-module-mirisdr:amd64

Install the FOSS driver and the interface layer:

mkdir -p ~/repos
cd ~/repos

git clone https://github.com/ericek111/libmirisdr-5.git
cd libmirisdr-5 && cmake . && make -j4 && sudo make install
sudo mkdir -p /usr/local/lib/SoapySDR/modules0.8
sudo cp libmirisdr.so* /usr/local/lib/SoapySDR/modules0.8

cd ~/repos
git clone https://github.com/ericek111/SoapyMiri.git
cd SoapyMiri && cmake . && make -j4 && sudo make install

Set up permissions:

$ lsusb | grep SDR
Bus 001 Device 002: ID 1df7:2500 SDRplay RSP1

$ sudo cat /etc/udev/rules.d/66-mirics.rules
SUBSYSTEM=="usb",ENV{DEVTYPE}=="usb_device",ATTRS{idVendor}=="1df7", \
  ATTRS{idProduct}=="2500", MODE="666", GROUP="plugdev", ENV{MTP_NO_PROBE}="1"
udevadm control --reload-rules && udevadm trigger

(Re)-connect the RSP1 SDR to the computer, and then execute the following command:

SoapySDRUtil --probe

See if the SDR is visible now.

You are done! You can run Gqrx SDR and it should see the RSP1 SDR now.

macOS Sequoia

Execute the following steps:

brew install soapysdr
mkdir -p ~/repos
cd ~/repos

git clone https://github.com/ericek111/libmirisdr-5.git
cd libmirisdr-5 && cmake . && make -j4 && sudo make install
sudo mkdir -p /opt/homebrew/lib/SoapySDR/modules0.8
sudo cp libmirisdr.4.*  /opt/homebrew/lib/SoapySDR/modules0.8

cd ~/repos
git clone https://github.com/ericek111/SoapyMiri.git
cd SoapyMiri && cmake . && make -j4 && sudo make install

Usage

SoapySDRUtil --probe
./miri_fm -e 2 -g 7 -f 28074000 -M usb \
  -w 8000000 | play -t raw -r24k -es -b 16 -c 1 -V1 - lowpass 3k

On macOS (at least), the -e 2 helps a lot with USB stability! With -e 2 things are working smoothly in Jan-2025 on macOS and Linux!