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.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.
- Windows
- Linux
- macOS
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.- Latest release: files.ettus.com/binaries/uhd/latest_release
- All previous releases: files.ettus.com/binaries/uhd/
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.Install the MSVC Redistributable
Download and run the MSVC Redistributable Package that matches the architecture encoded in the installer file name.
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:
- Download erllc_uhd_winusb_driver.zip and extract it.
- Plug in the USRP device; it will appear as an unrecognized USB device in Device Manager.
- Right-click the unrecognized device and select Update/Install driver software.
- Choose Browse for driver, navigate to
<UHD Install Dir>\share\uhd\usbdriver, and select the.inffile for your device type. - Complete the wizard. Repeat once per USB device type per host computer.
Add UHD to PATH
Add the UHD
bin directory (typically C:\Program Files\UHD\bin) to the %PATH% environment variable.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.Install the matching wheel
Replace
<version> with the version string reported above:pip will automatically download the correct wheel from PyPI.Python package troubleshooting
| Task | Command |
|---|---|
| Show installed wheel version | python -m pip show uhd |
| List all available versions on PyPI | python -m pip index versions uhd |
| Upgrade to the latest version | python -m pip install --upgrade uhd |
| Install a specific version | python -m pip install uhd==<version> |
| Check your Python version | python --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.
