Packages and Binaries:
libuhd-dev
Host library for the Universal Hardware Driver for Ettus Research products.
The supported devices provide analog radio receiver and transmitter hardware along with digital interfaces for getting signals to and from a software defined radio running on the host computer.
This package contains the header files for developing with libuhd. Doxygen generated documentation is in the uhd-host package.
Installed size: 1.14 MB
How to install: sudo apt install libuhd-dev
Dependencies:
- libuhd4.7.0
libuhd4.7.0
Host library for the Universal Hardware Driver for Ettus Research products.
The supported devices provide analog radio receiver and transmitter hardware along with digital interfaces for getting signals to and from a software defined radio running on the host computer.
Installed size: 15.49 MB
How to install: sudo apt install libuhd4.7.0
Dependencies:
- libboost-chrono1.83.0t64
- libboost-filesystem1.83.0
- libboost-serialization1.83.0
- libboost-thread1.83.0
- libc6
- libgcc-s1
- libpython3.12t64
- libstdc++6
- libusb-1.0-0
libuhd4.7.0-dpdk
Host library for the Universal Hardware Driver for Ettus Research products.
The supported devices provide analog radio receiver and transmitter hardware along with digital interfaces for getting signals to and from a software defined radio running on the host computer.
This package is built with the Data Plane Development Kit and has additional dependencies and system configuration requirements to use those features.
Installed size: 15.69 MB
How to install: sudo apt install libuhd4.7.0-dpdk
Dependencies:
- libboost-chrono1.83.0t64
- libboost-filesystem1.83.0
- libboost-serialization1.83.0
- libboost-thread1.83.0
- libc6
- libgcc-s1
- libpython3.12t64
- librte-eal24
- librte-ethdev24
- librte-hash24
- librte-mbuf24
- librte-mempool24
- librte-ring24
- libstdc++6
- libusb-1.0-0
libuhd4.7.0-dpdk-tests
Network tests for the Universal Hardware Driver for Ettus Research products.
This package is built with the Data Plane Development Kit and has additional dependencies and system configuration requirements to use those features.
Installed size: 1.13 MB
How to install: sudo apt install libuhd4.7.0-dpdk-tests
Dependencies:
- libboost-filesystem1.83.0
- libboost-program-options1.83.0
- libc6
- libgcc-s1
- librte-eal24
- librte-ethdev24
- librte-hash24
- librte-mbuf24
- librte-mempool24
- librte-net24
- librte-ring24
- libstdc++6
- libuhd4.7.0-dpdk
python3-uhd
Host library for the Universal Hardware Driver for Ettus Research products.
The supported devices provide analog radio receiver and transmitter hardware along with digital interfaces for getting signals to and from a software defined radio running on the host computer.
This package contains the Python API support for Python3.
Installed size: 3.62 MB
How to install: sudo apt install python3-uhd
Dependencies:
- libc6
- libgcc-s1
- libpython3.12t64
- libstdc++6
- libuhd4.7.0
- python3
- python3
- python3-numpy
- python3-numpy-abi9
- python3-ruamel.yaml
uhd-doc
Detailed documentation for the Universal Hardware Driver.
This package includes the Doxygen generated documentation.
Installed size: 35.93 MB
How to install: sudo apt install uhd-doc
Dependencies:
- libjs-mathjax
uhd-host
Host utilities for the Universal Hardware Driver for Ettus Research products.
The supported devices provide analog radio receiver and transmitter hardware along with digital interfaces for getting signals to and from a software defined radio running on the host computer.
This package includes the uhd_find_devices application to locate and configure attached peripherals, the uhd_usrp_probe application to display hardware configuration information and Doxygen generated documentation.
Installed size: 27.24 MB
How to install: sudo apt install uhd-host
Dependencies:
- libboost-filesystem1.83.0
- libboost-program-options1.83.0
- libboost-test1.83.0
- libboost-thread1.83.0
- libc6
- libgcc-s1
- libncurses6
- libstdc++6
- libtinfo6
- libuhd4.7.0
- python3
- python3-numpy
- python3-numpy-abi9
- python3-requests
- python3-uhd
rfnoc_image_builder
Build UHD image using RFNoC blocks.
root@kali:~# rfnoc_image_builder -h
usage: rfnoc_image_builder [-h] (-y YAML_CONFIG | -r GRC_CONFIG) [-F FPGA_DIR]
[-B BUILD_DIR] [-O BUILD_OUTPUT_DIR]
[-E BUILD_IP_DIR] [-o IMAGE_CORE_OUTPUT]
[-x ROUTER_HEX_OUTPUT] [-I INCLUDE_DIR]
[-b GRC_BLOCKS] [-l LOG_LEVEL] [-R] [-G] [-W]
[-S SECURE_CORE] [-K SECURE_KEY] [-d DEVICE]
[-n IMAGE_CORE_NAME] [-t TARGET] [-g] [-s] [-P]
[-j JOBS] [-c] [-p VIVADO_PATH] [-H] [-D]
Build UHD image using RFNoC blocks
options:
-h, --help show this help message and exit
-y YAML_CONFIG, --yaml-config YAML_CONFIG
Path to yml configuration file
-r GRC_CONFIG, --grc-config GRC_CONFIG
Path to grc file to generate config from
-F FPGA_DIR, --fpga-dir FPGA_DIR
Path to directory for the FPGA source tree. Defaults
to the FPGA source tree of the current repo.
-B BUILD_DIR, --build-dir BUILD_DIR
Path to directory where the image core and and build
artifacts will be generated. Defaults to build-<image-
core-name> in the same directory as the source file.
-O BUILD_OUTPUT_DIR, --build-output-dir BUILD_OUTPUT_DIR
Path to directory for final FPGA build outputs.
Defaults to the FPGA's top-level directory + /build
-E BUILD_IP_DIR, --build-ip-dir BUILD_IP_DIR
Path to directory for IP build artifacts. Defaults to
the FPGA's top-level directory + /build-ip
-o IMAGE_CORE_OUTPUT, --image-core-output IMAGE_CORE_OUTPUT
DEPRECATED! This has been replaced by --build-dir.
-x ROUTER_HEX_OUTPUT, --router-hex-output ROUTER_HEX_OUTPUT
DEPRECATED! This option will be ignored.
-I INCLUDE_DIR, --include-dir INCLUDE_DIR
Path to directory of the RFNoC Out-of-Tree module
-b GRC_BLOCKS, --grc-blocks GRC_BLOCKS
Path to directory of GRC block descriptions (needed
for --grc-config only)
-l LOG_LEVEL, --log-level LOG_LEVEL
Adjust log level
-R, --reuse Reuse existing files (do not regenerate image core).
-G, --generate-only Just generate files without building the FPGA
-W, --ignore-warnings
Run build even when there are warnings in the build
process
-S SECURE_CORE, --secure-core SECURE_CORE
Build a secure image core instead of a bitfile. This
argument provides the name of the generated YAML.
-K SECURE_KEY, --secure-key SECURE_KEY
Path to encryption key file to use for secure core.
-d DEVICE, --device DEVICE
Device to be programmed [x300, x310, e310, e320, n300,
n310, n320, x410, x440]. Needs to be specified either
here, or in the configuration file.
-n IMAGE_CORE_NAME, --image_core_name IMAGE_CORE_NAME
Name to use for the RFNoC image core. Defaults to name
of the image core YML file, without the extension.
-t TARGET, --target TARGET
Build target (e.g. X310_HG, N320_XG, ...). Needs to be
specified either here, on the configuration file.
-g, --GUI Open Vivado GUI during the FPGA building process
-s, --save-project Save Vivado project to disk
-P, --ip-only Build only the required IPs
-j JOBS, --jobs JOBS Number of parallel jobs to use with make
-c, --clean-all Cleans the IP before a new build
-p VIVADO_PATH, --vivado-path VIVADO_PATH
Path to the base install for Xilinx Vivado if not in
default location (e.g., /tools/Xilinx/Vivado).
-H, --no-hash Do not include source YAML hash in the generated
source code.
-D, --no-date Do not include date or time in the generated source
code.
uhd_adc_self_cal
Invoke calibration in some UHD devices.
root@kali:~# uhd_adc_self_cal --help
UHD ADC self calibration Allowed options:
--help help message
--version print the version string and exit
--args arg device address args
uhd_cal_rx_iq_balance
Generate RX IQ Balance Calibration Table for a UHD Device
root@kali:~# uhd_cal_rx_iq_balance --help
USRP Generate RX IQ Balance Calibration Table Allowed options:
--help help message
--verbose enable some verbose
--args arg Device address args [default = ""]
--subdev arg Subdevice specification (default: first
subdevice, often 'A')
--tx_wave_ampl arg (=0.69999999999999996)
Transmit wave amplitude
--tx_offset arg (=934400) TX LO offset from the RX LO in Hz
--freq_start arg Frequency start in Hz (do not specify
for default)
--freq_stop arg Frequency stop in Hz (do not specify
for default)
--freq_step arg (=7300000) Step size for LO sweep in Hz
--nsamps arg Samples per data capture
--precision arg (=0.0001) Correction precision (default=0.0001)
This application measures leakage between RX and TX on a transceiver daughterboard to self-calibrate.
Note: Not all daughterboards support this feature. Refer to the UHD manual for details.
uhd_cal_tx_dc_offset
Generate TX DC Offset Calibration Table for a UHD Device
root@kali:~# uhd_cal_tx_dc_offset --help
USRP Generate TX DC Offset Calibration Table Allowed options:
--help help message
--verbose enable some verbose
--args arg device address args [default = ""]
--subdev arg Subdevice specification (default: first
subdevice, often 'A')
--tx_wave_freq arg (=507123) Transmit wave frequency in Hz
--tx_wave_ampl arg (=0.69999999999999996)
Transmit wave amplitude
--rx_offset arg (=934400) RX LO offset from the TX LO in Hz
--freq_start arg Frequency start in Hz (do not specify
for default)
--freq_stop arg Frequency stop in Hz (do not specify
for default)
--freq_step arg (=7300000) Step size for LO sweep in Hz
--nsamps arg Samples per data capture
--precision arg (=0.0001) Correction precision (default=0.0001)
This application measures leakage between RX and TX on a transceiver daughterboard to self-calibrate.
Note: Not all daughterboards support this feature. Refer to the UHD manual for details.
uhd_cal_tx_iq_balance
Generate TX IQ Balance Calibration Table for a UHD Device
root@kali:~# uhd_cal_tx_iq_balance --help
USRP Generate TX IQ Balance Calibration Table Allowed options:
--help help message
--verbose enable some verbose
--args arg device address args [default = ""]
--subdev arg Subdevice specification (default: first
subdevice, often 'A')
--tx_wave_freq arg (=507123) Transmit wave frequency in Hz
--tx_wave_ampl arg (=0.69999999999999996)
Transmit wave amplitude
--rx_offset arg (=934400) RX LO offset from the TX LO in Hz
--freq_start arg Frequency start in Hz (do not specify
for default)
--freq_stop arg Frequency stop in Hz (do not specify
for default)
--freq_step arg (=7300000) Step size for LO sweep in Hz
--nsamps arg Samples per data capture
--precision arg (=0.0001) Correction precision (default=0.0001)
This application measures leakage between RX and TX on a transceiver daughterboard to self-calibrate.
Note: Not all daughterboards support this feature. Refer to the UHD manual for details.
uhd_config_info
USRP Hardware Driver Build Configuration Info
root@kali:~# uhd_config_info --help
UHD Config Info - Allowed Options:
--build-date Print build date
--c-compiler Print C compiler
--cxx-compiler Print C++ compiler
--c-flags Print C compiler flags
--cxx-flags Print C++ compiler flags
--enabled-components Print built-time enabled components
--install-prefix Print install prefix
--boost-version Print Boost version
--libusb-version Print libusb version
--pkg-path Print pkg path
--lib-path Print library path
--images-dir Print images dir
--abi-version Print ABI version string
--print-all Print everything
--version Print this UHD build's version
--help Print help message
uhd_find_devices
USRP Hardware Driver Discovery Utility
root@kali:~# uhd_find_devices --help
UHD Find Devices Allowed options:
--help help message
--args arg device address args
uhd_image_loader
UHD Image Loader
root@kali:~# uhd_image_loader --help
UHD Image Loader
Load firmware and/or FPGA images onto an Ettus Research device.
Allowed options:
--help help message
--args arg Device args, optional loader args
--fw-path arg Firmware path (uses default if none specified)
--fpga-path arg FPGA path (uses default if none specified)
--out-path arg Output path/filename of the downloaded FPGA .bit file
--no-fw Don't burn firmware
--no-fpga Don't Burn FPGA
--download Download an image to a bit/bin file
uhd_images_downloader
USRP Hardware Driver firmware/FPGA downloader
root@kali:~# uhd_images_downloader -h
usage: uhd_images_downloader [-h] [-t TYPES] [-i INSTALL_LOCATION]
[-m MANIFEST_LOCATION] [-I INVENTORY_LOCATION]
[-l] [--url-only] [--buffer-size BUFFER_SIZE]
[--download-limit DOWNLOAD_LIMIT]
[--http-proxy HTTP_PROXY] [-b BASE_URL] [-k] [-T]
[-y] [-n] [--refetch] [-V] [-q] [-v]
Download image files required for USRPs. Usage: The `uhd_images_downloader`
should work, "out of the box", with no command line arguments. Assuming your
computer has an internet connection to [files.ettus.com], simply run the
utility every time you update UHD, and the installed images for your devices
should always be up to date. Images will be downloaded on a per-target basis.
That is, there are image packages for a desired device and configuration.
Users can specify which image packages they would plan to use. To see a list
of available targets, run `uhd_images_downloader --list-targets`. The left
column of the printout will be a list of available image archives. From there,
you can construct a regular expression which matches to the targets you wish
to download. For example, in order to download all image packages related to
the X300 product line, users may run `uhd_images_downloader --types x3.*`. The
`uhd_images_downloader` uses a manifest to look-up the URLs of image packages
to download. Downloaded images are recorded in an inventory file that lives in
the images install location. This allows the downloader to skip images that
were previously downloaded, and haven't changed since. Manifests are built
into the downloader, but can also be accessed at uhd/images/manifest.txt.
Inventory files are JSON files called `inventory.json`, by default. It is
possible to specify the inventory file in command line arguments, but we don't
recommend using this functionality unless you're really sure you need it.
options:
-h, --help show this help message and exit
-t TYPES, --types TYPES
RegEx to select image sets from the manifest file.
(default: None)
-i INSTALL_LOCATION, --install-location INSTALL_LOCATION
Set custom install location for images (default: None)
-m MANIFEST_LOCATION, --manifest-location MANIFEST_LOCATION
Set custom location for the manifest file (default:
None)
-I INVENTORY_LOCATION, --inventory-location INVENTORY_LOCATION
Set custom location for the inventory file (default:
None)
-l, --list-targets Print targets in the manifest file to stdout, and
exit. To get relative paths only, specify an empty
base URL (-b ''). (default: False)
--url-only With -l, only print the URLs, nothing else. (default:
False)
--buffer-size BUFFER_SIZE
Set download buffer size (default: 8192)
--download-limit DOWNLOAD_LIMIT
Set threshold for download limits. Any download larger
than this will require approval, either interactively,
or by providing --yes. (default: 1073741824)
--http-proxy HTTP_PROXY
Specify HTTP(S) proxy in the format
http[s]://user:[email protected]:port If this this option
is not given, the environment variables
HTTP_PROXY/HTTPS_PROXY can also be used to specify a
proxy. (default: None)
-b BASE_URL, --base-url BASE_URL
Set base URL for images download location. Defaults to
$UHD_IMAGES_URL if set, or
https://files.ettus.com/binaries/cache/ otherwise.
(default: None)
-k, --keep Keep the downloaded images archives in the image
directory (default: False)
-T, --test Verify the downloaded archives before extracting them
(default: False)
-y, --yes Answer all questions with 'yes' (for scripting
purposes). (default: False)
-n, --dry-run Print selected target without actually downloading
them. (default: False)
--refetch Ignore the inventory file and download all images.
(default: False)
-V, --version show program's version number and exit
-q, --quiet Decrease verbosity level (default: 0)
-v, --verbose Increase verbosity level (default: 0)
uhd_usrp_probe
USRP Hardware Driver Peripheral Report Utility
root@kali:~# uhd_usrp_probe --help
UHD USRP Probe Allowed options:
--help help message
--version print the version string and exit
--args arg device address args
--tree specify to print a complete property tree
--string arg query a string value from the property tree
--double arg query a double precision floating point value
from the property tree
--int arg query a integer value from the property tree
--sensor arg query a sensor value from the property tree
--range arg query a range (gain, bandwidth, frequency, ...)
from the property tree
--vector when querying a string, interpret that as
std::vector
--init-only skip all queries, only initialize device
--interactive-reg-iface arg RFNoC devices only: Spawn a shell to
interactively peek and poke registers on RFNoC
blocks
usrp2_card_burner
USRP N-Series FPGA/Firmware Burner
root@kali:~# usrp2_card_burner -h
Usage: usrp2_card_burner [options]
Options:
-h, --help show this help message and exit
--dev=DEV raw device path
--fw=FW firmware image path (optional)
--fpga=FPGA fpga image path (optional)
--list list possible raw devices
--force override safety check
usrpctl
USRP Hardware Driver Peripheral Configuration Tool
root@kali:~# usrpctl -h
usage: usrpctl [-h] [-v] [id] {find,probe,reset} ...
positional arguments:
id identifies USRPs devices utilizing dev_addr_type
{find,probe,reset} supported commands, detailed help with usrpctl <cmd>
--help
find print devices found using id parameter
probe report detailed information on USRP device
reset reset the specified subcomponent(s) on the USRP device
options:
-h, --help show this help message and exit
-v increase verbosity level ranging from -v to -vvvvv
Updated on: 2024-Nov-17