Skip to content

soapysdr-module-hydrasdr

SoapySDR driver module for the HydraSDR RFOne

What it does

A plugin for SoapySDR, the vendor-neutral SDR abstraction layer, that makes the HydraSDR RFOne usable through the generic SoapySDR interface.

Why you would want it

It is what lets one program drive many different radios. SDR++, GQRX, CubicSDR, GNU Radio's Soapy source and a great deal else reach the RFOne through this module, so installing it is usually the difference between an application listing the radio and showing an empty device list. It is derived from the Airspy module and keeps its shape.

Before it will work

The HydraSDR host library (hydrasdr-host, which this unit depends on), the udev rule and group from the hydrasdr-rfone hardware entry, and SoapySDR itself, which the build and the packages pull in.

How it installs

  • apt: soapysdr-module-hydrasdr — on kali
  • Installed in a kali-rolling container on 2026-10-02: SoapySDRUtil --info loads libSoapyHydraSDR.so (1.0.1) from the system module directory and lists hydrasdr among the factories. Installing this brings the hydrasdr-tools package's vendor udev rule with it (see hydrasdr-host).
  • apt: soapysdr-module-hydrasdr — on ubuntu; version 26.04
  • Installed in an ubuntu:26.04 container on 2026-10-02: the module (1.0.1) loads and hydrasdr is a listed factory. It pairs with that archive's libhydrasdr0 1.0.3.
  • git (cmake) — https://github.com/hydrasdr/SoapyHydraSDR at v1.0.1 (commit 253ce5089faab6fbe66c220e853b1f39f974153a)
  • build dependencies: build-essential, cmake, pkg-config, libsoapysdr-dev, libusb-1.0-0-dev
  • Built on 2026-10-02 against the hydrasdr-host build, in the same rootless containers: debian:13, ubuntu:24.04, ubuntu:26.04 and kali-rolling all configure, compile and install, exit 0, about 2 s, five -Wdeprecated warnings. SoapySDRUtil --info then lists /usr/local/lib/SoapySDR/modules0.8/libSoapyHydraSDR.so (1.0.1-253ce50) and hydrasdr among the factories, with no ldconfig run. --find reports no devices, there being none. Built on x86_64 only; arm64 is unmeasured. Not measured: a board.

Files its install rule leaves under the prefix, checked after the run and never copied or removed by the engine:

  • lib/SoapySDR/modules0.8/libSoapyHydraSDR.so

Known problems

A module and its library must match or the radio is simply not listed rather than reported as broken: SoapySDRUtil --info shows whether the module loaded and any dlopen error, and is the first command to run. On Debian 13, Parrot and Ubuntu 24.04 the module is built into /usr/local/lib/ SoapySDR/modules0.8, which SoapySDR 0.8 searches by default; a SoapySDR built for a different module ABI would not look there. Not measured: any board, streaming, or a client application against the module.

Keeping it current

  • probe: github tags (hydrasdr/SoapyHydraSDR)
  • strategy: rebuild
  • Two tags ten days apart (v1.0.0 2025-12-10, v1.0.1 2025-12-20) and five commits since, the last on 2026-02-06 (module-directory handling that this block works around with a define). Move the pin when Debian does.

Where to get help with the software itself

Issues on the repository above. SoapySDR questions go to the SoapySDR project. Licence: MIT.

Source: catalog/packages/soapysdr-module-hydrasdr.yaml