Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/EttusResearch/uhd/llms.txt

Use this file to discover all available pages before exploring further.

Pre-built UHD packages are available for Windows, Linux, and macOS, letting you get up and running without compiling from source. Choose the tab that matches your operating system and follow the steps to install the driver, configure any USB hardware, and optionally add the UHD Python API.

Download the NSIS Installer

Ettus Research provides 64-bit Windows installers built with LibUSBx for USB3 support. Installer file names encode the target architecture and MSVC compiler version — for example, a file ending in _Win64_VS2019.exe was built for 64-bit Windows with the Visual Studio 2019 toolchain.
1

Run the installer

Download and execute the .exe installer that matches your target architecture and MSVC version. Accept the defaults or choose a custom install directory.
2

Install the MSVC Redistributable

Download and run the MSVC Redistributable Package that matches the architecture encoded in the installer file name.
3

Install the WinUSB driver (USB devices only)

Starting with UHD 4.9, the installer automatically places the Windows UHD USB driver in the installation folder and registers it with Windows — no further action is needed.For earlier UHD versions, or to install the driver manually:
  1. Download erllc_uhd_winusb_driver.zip and extract it.
  2. Plug in the USRP device; it will appear as an unrecognized USB device in Device Manager.
  3. Right-click the unrecognized device and select Update/Install driver software.
  4. Choose Browse for driver, navigate to <UHD Install Dir>\share\uhd\usbdriver, and select the .inf file for your device type.
  5. Complete the wizard. Repeat once per USB device type per host computer.
4

Add UHD to PATH

Add the UHD bin directory (typically C:\Program Files\UHD\bin) to the %PATH% environment variable.
The default Windows interface for editing environment variable paths is limited. Rapid Environment Editor is a convenient free alternative.
5

Download FPGA images

After installation, run the images downloader to fetch the FPGA and firmware images for your device:
"C:\Program Files\UHD\bin\uhd_images_downloader.exe"

LibUSB (optional custom version)

UHD installers from version 4.8 onwards bundle a compatible LibUSB DLL at <UHD Install Dir>\bin. If you need a different LibUSB version, download a release from the LibUSB GitHub releases page. Ensure the binary matches the platform and MSVC toolset version shown in the UHD installer filename, then copy all files from \VS20XX\MSYY\dll inside the archive into <UHD Install Dir>\bin.
On Windows, LibUSB v1.0.19 or later is required to use most USB 3 controllers.

Python API (Windows)

Starting with UHD 4.8, the UHD Python API for Windows is distributed as a separate binary wheel on PyPI. The wheel supports the same architecture and MSVC toolchain as the installer and is available for Python 3.10 and 3.12.
The UHD Python wheel version must exactly match the version of the UHD Installer Package. Mismatched versions are untested and unsupported.
1

Confirm the installed UHD version

"C:\Program Files\UHD\bin\uhd_config_info.exe" --version
2

Install the matching wheel

Replace <version> with the version string reported above:
python -m pip install uhd==<version>
pip will automatically download the correct wheel from PyPI.
3

Verify the import

python
>>> import uhd
No error output means the Python API is ready to use.

Python package troubleshooting

TaskCommand
Show installed wheel versionpython -m pip show uhd
List all available versions on PyPIpython -m pip index versions uhd
Upgrade to the latest versionpython -m pip install --upgrade uhd
Install a specific versionpython -m pip install uhd==<version>
Check your Python versionpython --version
Open a new command prompt after updating the UHD Installer Package so that the updated DLLs are found before initialising the Python module.

After Installation

FPGA Images

Learn how to download and manage FPGA and firmware images for every USRP device family.

Build from Source

Need a custom build or a version not yet in your package manager? Compile UHD directly from the Git repository.

Build docs developers (and LLMs) love