The USRP X3xx Series consists of the X300 and X310—high-performance software defined radios built around a Xilinx Kintex-7 FPGA. They feature two interchangeable RF daughterboard slots, dual SFP+ ports for 1 GigE or 10 GigE connectivity, and an optional PCIe (MXI) interface for near-zero latency host connections. With up to 160 MHz of RF bandwidth at 16-bit samples and supported master clock rates of 200 MHz and 184.32 MHz, the X3xx Series is the foundation for demanding lab, field, and production deployments.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.
Supported Models
X300
Xilinx Kintex-7 XC7K325T FPGA. Two daughterboard slots (A and B). Dual SFP+ + optional PCIe.
X310
Xilinx Kintex-7 XC7K410T FPGA (larger). Two daughterboard slots (A and B). Dual SFP+ + optional PCIe. Higher FPGA resource budget for larger RFNoC designs.
Features
Hardware Capabilities
- 2 transceiver card slots — 2×2 MIMO out of the box
- Dual SFP+ Transceivers — 1 GigE or 10 GigE
- PCIe over cable (MXI) — Gen1 ×4 via NI PCIe-8371 or ExpressCard-8360B
- External PPS input & output
- External reference input & output: 10 MHz, 11.52 MHz, 23.04 MHz, or 30.72 MHz
- Supported master clock rates: 200 MHz (default) and 184.32 MHz
- Variable daughterboard clock rates
- External GPIO connector (front panel) with UHD API control
- On-board USB JTAG programmer
- Internal GPSDO option
FPGA Capabilities
- 2 RX DDC chains and 2 TX DUC chains
- Timed commands in FPGA
- Timed sampling in FPGA
- Up to 160 MHz of RF bandwidth with 16-bit samples
- RFNoC capable
Getting Started
Assembling the X300/X310
- Remove the two Phillips screws from the top cover.
- Insert the daughterboards into slots A and B; optionally screw them to the motherboard.
- Connect RF cables from the daughterboard connectors to the labeled front-panel SMA ports.
- If installing an internal GPSDO, follow the GPSDO installation guide and connect an external GPS antenna to the rear GPS ANT connector.
- Insert a 1 GigE SFP+ transceiver into Ethernet Port 0 and connect the X3xx to your host.
- Connect the power supply and power on the device.
Network Connectivity
An unconfigured X3xx defaults to 192.168.10.2 on 1 GigE. Set your host interface to192.168.10.1 and verify:
uhd_usrp_probe reports FPGA version warnings, update the FPGA image before proceeding.
Updating the FPGA
Connection Methods
- 1 GigE
- 10 GigE
- PCIe (MXI)
Insert a 1 Gigabit SFP transceiver into Ethernet Port 0. Connect to your host with a standard Ethernet cable.Default device IP address: 192.168.10.2Set the host interface to a static address in the same subnet (e.g.,
192.168.10.1).FPGA Image Flavors
The X3xx ships two SFP+ ports; the FPGA image determines their behavior:| Flavor | SFP+ Port 0 | SFP+ Port 1 |
|---|---|---|
| HG (default) | 1 GigE | 10 GigE |
| XG | 10 GigE | 10 GigE |
| HA | 1 GigE | Aurora |
| XA | 10 GigE | Aurora |
- LVBITX — for use over PCIe and Ethernet
- BIT — for use over Ethernet and JTAG
Master Clock Rate
The X3xx generates a single master clock rate per motherboard. Supported values:- 200 MHz (default; required for TwinRX daughterboard)
- 184.32 MHz
The X3xx does not support changing the master clock rate after initialization via
set_master_clock_rate(). To switch rates, destroy the USRP object and recreate it with the new master_clock_rate argument.Supported Daughterboards
The X3xx accepts all standard USRP daughterboards in its two slots (A and B). Popular choices include:| Daughterboard | Frequency Range | Bandwidth | Notes |
|---|---|---|---|
| WBX | 50 MHz – 2.2 GHz | 40 MHz (WBX) / 120 MHz (WBX-120) | Full-duplex |
| SBX | 400 MHz – 4.4 GHz | 40 MHz / 120 MHz | Full-duplex |
| CBX | 1.2 GHz – 6 GHz | 40 MHz / 120 MHz | Full-duplex |
| UBX | 10 MHz – 6 GHz | 40 MHz / 160 MHz | Full-duplex; requires dboard clock ≤ 20 MHz below 1 GHz |
| OBX | 10 MHz – 8.4 GHz | 160 MHz | Full-duplex |
| TwinRX | 10 MHz – 6 GHz | — | 2-channel RX only; requires 200 MHz MCR |
| BasicRX / LFRX | — | 250 MHz / 66 MHz | No tuning elements |
| DBSRX2 | 800 MHz – 2.3 GHz | 8–80 MHz | Set dboard clock to 100 MHz |
| TVRX2 | 50 MHz – 860 MHz | Up to 10 MHz | Set dboard clock to 100 MHz |
Synchronization with OctoClock
To synchronize multiple X3xx devices, connect an OctoClock (CDA-2990) to distribute a shared 10 MHz reference and 1 PPS signal:system_ref_rate argument:
Device Arguments
| Key | Description | Example |
|---|---|---|
addr | IPv4 address of primary SFP+ port | addr=192.168.10.2 |
second_addr | IPv4 address of secondary SFP+ port | second_addr=192.168.40.2 |
resource | NI-RIO resource name (PCIe) | resource=RIO0 |
master_clock_rate | Master clock rate in Hz | master_clock_rate=184.32e6 |
dboard_clock_rate | Daughterboard reference clock in Hz | dboard_clock_rate=20e6 |
system_ref_rate | External reference clock frequency | system_ref_rate=30.72e6 |
time_source | PPS source | time_source=external |
clock_source | Reference clock source | clock_source=external |
fpga | Select FPGA image flavor (PCIe only) | fpga=HG |
force_mtu | Manually set network MTU | force_mtu=8000 |
Using the X3xx from UHD
Front Panel Reference
Key front-panel indicators:| Indicator | Meaning |
|---|---|
| JTAG USB | On-board USB-JTAG programmer port |
| TX/RX LED (RF A) | Data streaming on TX/RX channel, daughterboard A |
| RX2 LED (RF A) | Data streaming on RX2 channel, daughterboard A |
| REF LED | External reference clock locked |
| PPS LED | Pulses once per second on valid PPS signal |
| GPS LED | GPS reference locked (GPSDO option) |
| LINK LED | Host computer communicating with device |
Troubleshooting
”No Control Response” Error
This error typically means the host IP address is on a different subnet than the USRP. Verify that your host interface is set to the correct static IP (e.g.,192.168.10.1 for 1 GigE Port 0).
Firewall Blocking Discovery
Device discovery uses UDP broadcast. Ifuhd_find_devices returns nothing, allow UDP source port 49152 through your firewall, or specify the device IP address directly.
