UHD (USRP Hardware Driver) is the official software driver and API for the Universal Software Radio Peripheral (USRP™) platform, created and sold by Ettus Research. UHD provides a unified interface across all USRP hardware generations — from the USB-based B200 series to the high-throughput X4xx RFSoC devices — letting you focus on your signal processing application rather than hardware-specific details.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.
Quickstart
Receive and transmit your first RF samples in minutes using C++ or Python.
Installation
Install UHD from binary packages on Linux, macOS, or Windows.
USRP Devices
Browse device-specific guides for B-series, N-series, X3xx, X4xx, and E-series USRPs.
API Reference
Explore the full C++, Python, and C API surface for device control and streaming.
What is UHD?
UHD acts as the bridge between host software and USRP hardware. It handles device discovery, FPGA image loading, RF frontend configuration (frequency, gain, bandwidth), and high-speed sample streaming over USB, Ethernet, or PCIe. Applications built on UHD can target a single USRP channel or orchestrate dozens of synchronized channels across multiple devices.C++ API
High-performance native API via
multi_usrp and RFNoC graphPython API
Full-featured Python bindings mirroring the C++ interface
C API
C-compatible wrapper for embedding in non-C++ applications
Common Use Cases
RX/TX Streaming
Configure streamers, issue stream commands, and handle metadata for continuous or burst operation.
Multi-USRP MIMO
Combine multiple USRPs into a single synchronized, multi-channel device.
RFNoC FPGA Processing
Build custom FPGA DSP pipelines using the RF Network-on-Chip framework.
Device Synchronization
Lock multiple USRPs to a common 10 MHz + PPS reference for phase-coherent operation.
Get Started in 3 Steps
Install UHD
Download a binary installer or build from source for your operating system. See Binary Installation or Build from Source.
Download FPGA images
Run
uhd_images_downloader to fetch the FPGA and firmware images matching your UHD version.Ecosystem
UHD integrates with major SDR frameworks and toolkits:- GNU Radio — the most popular open-source SDR signal-processing framework
- RFNoC OOT Blocks — out-of-tree RFNoC block examples
- MathWorks MATLAB/Simulink — model-based SDR design
- Software Radio Systems srsRAN — open-source 4G/5G RAN software
- OpenAirInterface — open-source 5G platform
UHD is licensed under GPLv3. Source code and issue tracker are on GitHub.
