Releases: EttusResearch/uhd
Releases · EttusResearch/uhd
UHD 4.7.0.0
UHD 4.7.0.0
Highlights / Main Changes
- Major updates to rfnoc_image_builder (a98ce26). This change adds support for
defining transport adapters in the image builder YAML files, adding custom
modules, and more. - Updated embedded OS on file system images for E3xx, N3xx, and X4xx devices
to Yocto 4.0 (kirkstone).
New Features
- General
- Allow installing only Python-based utilities (e.g., rfnoc_image_builder)
by adding the ENABLE_PYMOD_UTILS option to CMake. - Added ability to query dot representation of RFNoC graph
- Allow installing only Python-based utilities (e.g., rfnoc_image_builder)
- Python support
- Added DRAMReceiver class and amend rx_to_file.py example to use new class.
This supplements the DRAMTransmitter class and simplifies using the DRAM-backed
RFNoC replay block to when signal bandwidth exceeds available streaming bandwidth.
- Added DRAMReceiver class and amend rx_to_file.py example to use new class.
- CMake
- We now search for a system version of Pybind11 before falling back to the
bundled version. The system version is preferred, and the bundled version
may be removed in a future release.
- We now search for a system version of Pybind11 before falling back to the
- RFNoC
- Image builder: Major update, which adds support for defining transport
adapters in the image builder YAML files, adding custom modules, choosing
custom directories for build, IP, and intermediate files, building IP
only, saving Vivado projects, and more. Image core YAML files created with
this version are not compatible with previous versions, and vice versa!
Also adds many more checks to avoid building bitfiles that are either
incomplete, or valid but probably not the desired outcome. - Added support for defining custom register spaces in RFNoC blocks.
- Added license checking subsystem. This allows creating RFNoC blocks that
require a license key to operate. - Add device DNA feature for X310, X410, X440. This allows reading back the
FPGA's DNA, which is a unique identifier.
- Image builder: Major update, which adds support for defining transport
- Embedded OS for E3xx, N3xx, and X4xx devices
- With the switch to Yocto 4.0 (kirkstone), the SD card and eMMC images no
longer pre-populate the second system partition. Refer to the device
specific "Updating Filesystems" section in the user manual for how to populate it.
This reduces the size of compressed .sdimg filesystem images.
- With the switch to Yocto 4.0 (kirkstone), the SD card and eMMC images no
- X440
- Added new guided log info mode to provide more information about the Nyquist
zone in which the chosen frequency is located. These additional info logs
are enabled by default. For disabling the guided mode, add the entry
guided_mode=false
to the UHD config file in the "Global" section.
- Added new guided log info mode to provide more information about the Nyquist
- Examples
- rfnoc-example now also generates Python bindings for OOT block control functions.
Dependencies changes
- Increase minimum required version
- Python to 3.7.0
- Pybind11 to 2.7.0
Bug Fixes
- General UHD
- Fix issue with undefined HOME or XDG_CONFIG_HOME
- Fix compilation error with boost 1.85.0 (closed issue 740)
- Fixed cmake find_library for UHD to fail if the library is not found
- Fixed setters for ALL_CHANS in multi_usrp
- Demoted safe call logging to warning
- Fixed outstanding clang-format issues
- Fixed compiling with gcc 13.2
- Removed superfluous usage of const in return values
- Python support
- YAML files are now listed as part of the package
- Fix setting start_time having no effect
- RFNoC
- Add EOB to source port of null_src_sink block
- Fix RFNoC graph action queue lockup on action exceptions
- FIR filters now uses newer IP revisions
- Reverse FIR filter coefficients now get embedded in DSPE48
- B2xx
- Fixed FRAC2 calculation (closed issue 684).
- Fix DC truncation bias by adding rounding to DDC chain
- X310
- Fix warning about duplicate reg
- ubx
- update ubx xcvr mode options
- write output power to correct LO
- Fix width of gain register
- MPM
- Deactivate explicit DAD (Duplicate Address Detection) on int0 interface
since this is the default behavior of systemd v250.5 (Yocto release kirkstone)
for static IPv4 addresses if the IP address is a link local address. - Correct outdated mender command in prints of usrp_update_fs utility
- No longer import from from rpc_server when already importing usrp_mpm
- Demoted log level of ECHO send error
- No longer print iptables errors when setting up forwarding
- Deactivate explicit DAD (Duplicate Address Detection) on int0 interface
- X400 Platform
- Add PPS interface to X410/X440 BSP
- Add netlist make flow
- Update PS DRAM speed bin
- Replace Ethernet transport adapter
- X410
- Set Locale for ZBX Lattice build
- Improve Lattice make flow
- X440
- Fix error in master clock table for 1000MHz mcr.
- Place SPI into IOB on X440
- mpm
- Add error for recurring TA node inst values
- Fix warning about different converter rates
- Fix MTS skip for dual-rate
- Use greatest converter rate for sysref rate
- Add warning for bad conv rate order
- Enable multiple LMK VCO rates per MCR
- Examples
- Fix rx_samples_to_file failure for multichannel fullpath.
- Fixed bugs observing cmd argument -c in remote_rx.py example.
- Updated tx_waveforms examples now also use timed commands during
frequency tuning for all devices except for x410.
On X440 this allows reproducing specified channel to channel phase alignments. - Consistently comment out sections in rx_samples_to_file.
Validated OS Environments
(Versions for build and runtime dependencies can be determined from the
docker container definitions in the UHD repository at .ci/docker/...)
- Linux:
- Ubuntu: bionic (18.04), focal (20.04), jammy (22.04), noble (24.04)
- Fedora: 37, 38*
- Windows: 10 21H2, 11 21H2
- MacOS: Monterey (12.6)
* Corrected post release
UHD 4.6.0.0
UHD 4.6.0.0
The UHD 4.6.0.0 release adds:
- Phase repeatability, dual rate support, and lower sampling rates for the NI Ettus USRP X440.
Changelog:
- ci
- only build docker images once per week
- propagate testLength to RF ATS
- replace deprecated ruamel.yaml methods
- use build farm for windows builds
- cmake
- Fix make_x410 and make_x440 targets
- deb
- copyright file update to eliminate errors and warnings
- docs
- X440: Add FBX to daughterboard list
- X440: Corrected web link syntax in FBX doc.
- X440: Add X440_X4_200 to image flavors
- X440: Add dual-rate documentation
- examples
- L band capture example using dual rate
- fpga
- ci: Add X440_X4_200 to pipelines
- lib: Allow buffering in eth_ipv4_chdr_adapter
- n3xx: Add CE clock
- rfnoc: Add clock info to backend ifc
- rfnoc: radio: Add clock index parameters
- tools: Add X440_X4_200 to X440 package
- x400: Add CE clock
- x400: Add X440 200 MHz variant with DDC/DUC
- x400: Split DRAM interface into two banks
- x400: Update PL DRAM speed bin
- x400: bump minor revision
- x400: pps_sync cleanup
- x400: propagate pps_sync changes
- x400: update signals to run on two domains
- x440: cpld: led control cleanup
- x440: remove extra synchronizer
- images
- bump x4xx fpga images
- update non-x4xx images
- lib
- rfnoc: Add clock info fields to client zero
- rfnoc: Add support for auto-clock discovery
- x4xx: Use auto clock ID in x400_radio_control
- mpm
- x440: Add lookup table for default MCR per DSP bandwidth
- x440: Multi-Tile Sync disabled when using dual rate
- x400: Align FPGA revision
- x400: match HDL PPS updates
- x400: make PRC a multiple of both rfdc rates
- fix timekeeper misalignment
- multi_usrp
- Added module_serial to info
- rfnoc
- Enable SEP throttle register
- image builder: Add clock index support to image builder
- utils
- init device with gpsdo sources in query_gpsdo_sensors
- x4xx
- Add support for auto clock ID
- FPGA designs now use a replay block per utilized DRAM bank
- x440
- Add support for using radio block specific master clock rates
- X4_440 and X4_1600 fpga image now contain 2 replay blocks
(number of ports per replay block halved compared to previous release)
UHD 4.6.0.0-RC2
UHD 4.6.0.0
The UHD 4.6.0.0 release adds:
- Lower sampling rates, phase repeatability and dual rate support for the NI Ettus USRP X440.
Changelog:
- ci
- only build docker images once per week
- propagate testLength to RF ATS
- replace deprecated ruamel.yaml methods
- use build farm for windows builds
- cmake
- Fix make_x410 and make_x440 targets
- deb
- copyright file update to eliminate errors and warnings
- docs
- X440: Add FBX to daughterboard list
- X440: Corrected web link syntax in FBX doc.
- x440: Add X440_X4_200 to image flavors
- examples
- L band capture example using dual rate
- fpga
- ci: Add X440_X4_200 to pipelines
- lib: Allow buffering in eth_ipv4_chdr_adapter
- n3xx: Add CE clock
- rfnoc: Add clock info to backend ifc
- rfnoc: radio: Add clock index parameters
- tools: Add X440_X4_200 to X440 package
- x400: Add CE clock
- x400: Add X440 200 MHz variant
- x400: Split DRAM interface into two banks
- x400: Split DRAM interface on X440_X4_200
- x400: Update PL DRAM speed bin
- x400: bump minor revision
- x400: pps_sync cleanup
- x400: propagate pps_sync changes
- x400: update signals to run on two domains
- x440: cpld: led control cleanup
- x440: remove extra synchronizer
- images
- bump x4xx fpga images
- update non-x4xx images
- lib
- rfnoc: Add clock info fields to client zero
- rfnoc: Add support for auto-clock discovery
- x4xx: Use auto clock ID in x400_radio_control
- mpm
- Add LUT for def. MCR per DSP bandwidth
- Disable MTS completely for dual rate
- x400: Align FPGA revision
- x400: match HDL PPS updates
- x400: make PRC a multiple of both rfdc rates
- fix timekeeper misalignment
- multi_usrp
- Added module_serial to info
- rfnoc
- Enable SEP throttle register
- image builder: Add clock index support to image builder
- utils
- init device with gpsdo sources in query_gpsdo_sensors
- x4xx
- Add support for auto clock ID
UHD 4.6.0.0-RC1
UHD 4.6.0.0
The UHD 4.6.0.0 release adds:
- Lower sampling rates, phase repeatability and dual rate support for the NI Ettus USRP X440.
Changelog:
- ci
- only build docker images once per week
- propagate testLength to RF ATS
- replace deprecated ruamel.yaml methods
- use build farm for windows builds
- deb
- copyright file update to eliminate errors and warnings
- docs
- X440: Add FBX to daughterboard list
- X440: Corrected web link syntax in FBX doc.
- x440: Add X440_X4_200 to image flavors
- examples
- L band capture example using dual rate
- fpga
- ci: Add X440_X4_200 to pipelines
- lib: Allow buffering in eth_ipv4_chdr_adapter
- n3xx: Add CE clock
- rfnoc: Add clock info to backend ifc
- rfnoc: radio: Add clock index parameters
- tools: Add X440_X4_200 to X440 package
- x400: Add CE clock
- x400: Add X440 200 MHz variant
- x400: Split DRAM interface into two banks
- x400: Split DRAM interface on X440_X4_200
- x400: Update PL DRAM speed bin
- x400: bump minor revision
- x400: pps_sync cleanup
- x400: propagate pps_sync changes
- x400: update signals to run on two domains
- x440: cpld: led control cleanup
- x440: remove extra synchronizer
- images
- bump x4xx fpga images
- bump x4xx fpga images
- update non-x4xx images
- lib
- rfnoc: Add clock info fields to client zero
- rfnoc: Add support for auto-clock discovery
- x4xx: Use auto clock ID in x400_radio_control
- mpm
- Add LUT for def. MCR per DSP bandwidth
- Disable MTS completely for dual rate
- x400: Align FPGA revision
- x400: match HDL PPS updates
- fix timekeeper misalignment
- rfnoc
- Enable SEP throttle register
- image builder: Add clock index support to image builder
- utils
- init device with gpsdo sources in query_gpsdo_sensors
- x4xx
- Add support for auto clock ID
UHD 4.5.0.0
UHD 4.5.0.0
The UHD 4.5.0.0 release adds:
- Support for the NI Ettus USRP X440.
- Bug fixes and improvements for USRP devices. See the changelog.
Changelog:
- b200
- Fix invalid RF switch positions
- ci
- add attempt number to uhd build artifact name on failure
- Add conditions for embedded builds, HW tests
- add pytest args option to test dev pipeline
- add step for x440 embedded runs
- Allow internal fileserver usage for MS installer builds
- Auto-detect conditionals for pipeline stages
- Default to internal fileserver for FPGA images
- Disable PR runs for draft PRs
- Enable X440
- Fix swallowed return codes in CI script steps
- Fix the chocolately version to use
- fixup typo in x440 sdr-test0 template
- increase build timeouts to 90 minutes
- increase win docker image build timeout
- modify default sfp0 and reboot
- Remove Fedora 35 and add Fedora 37
- restrict analyze changeset pool
- select docker image repo directly at container endpoint definitions
- select docker registry based on branch
- splitup x410 test stage in hardware test dev pipeline
- Update CLA Assistant to v2.3.0
- update docker builds to run twice a week
- update docker service connection
- update to build docker builds for all release branches
- updates for new E320 in devtest system
- clang
- Apply clang-formatting to all C/C++ files
- Modify files for treatment with clang-format
- Update clang-format for version 14
- cmake
- Fix auto-detection of Python install directory
- Fix linking DPDK when installed at non-standard location
- cpld
- Adapt CPLD updater for future X4x0 dboards
- debian
- Fix copyright dates in changelog
- devtest
- add exemptions for x440 python API test
- correct docstrings with example being run
- disable rx_samples_to_file_test for x440
- fix typo in error message
- gpio test updates
- remove API calls that now error
- remove benchmark_rate test for x440
- docs
- Add page on timed commands
- add python package requirement for usrpctl MPM reset
- add updated msgpack rpc package
- b200: Improve docs (auto MCR, GPIOs)
- Document throttle stream arg
- Fix argument for uhd_image_loader in E3xx docs
- Fix docstring for get_block_chain()
- fix typo and consistency in usrpctl docs
- Improve documentation on timekeepers
- Make X410 dboard a subpage of the X4xx page
- rfnoc: Document RFNoC overrun handling algorithm
- Update clocking theory of operations for X4xx
- update docs for reset command
- update FPGA build docs
- update remote streaming supported version
- Update X4x0 manual
- Update X4xx manual wrt. self-cal
- x410: Document UC_200 image flavor
- x440: Added FBX to UM daughterboards page
- x440: Extend X4x0 Usage Manual for x440
- x440: Fixed incorrect use of paragraph elements
- examples
- Add power controls to rx_ascii_art_dft.cpp
- Add throttle to replay_capture.py
- Amend tx_waveforms.py to use DramTransmitter
- Fix play region in replay_capture.py
- Remove default --ref and --pps values
- rx_samples_to_file: multi_streamer option
- experts
- Add force_dirty() call
- extension
- windows: Fixed linking extension example to uhd.lib
- fpga
- Add BUILD_BASE_DIR option to makefiles
- Add BUILD_SEED variable
- Add time changed pulse to timekeeper
- Add X440/FBX support
- ci: Add MAX_CPU to pool demands
- ci: Add X410_UC_200 to default bitfiles
- ci: Add X410_UC_200 to release pipeline
- ci: Enable publishing to internal server
- ci: Fix branches
- ci: Include modified manifest in artifacts
- ci: Support parallel jobs for IP builds
- ci: Use different seed for each job attempt
- ci: Use repeat_fpga_build for pipeline builds
- Clear clang-format settings for FPGA code
- docs: Add system memory recommendations
- docs: Clarify design tool requirements
- Fix RFNoC OOT Makefile inclusion
- lib: Add axis_pkt_throttle.sv
- lib: Add clock_div module
- lib: Add ctrl_port_to_wb_i2c module
- lib: Fix IPv4 CHDR TUSER width
- lib: Fix Vivado warnings
- lib: rfnoc: Add resize capability to chdr_stream_endpoint
- lib: rfnoc: Make RFNoC packet gates removable
- lib: rfnoc: Remove redundant packet gate
- lib: rfnoc: Support multiple port widths on crossbar
- Reformat javascript in doc
- rfnoc: Add DEVICE_FAMILY to stream endpoint
- rfnoc: Add throttle to stream endpoints
- rfnoc: Add ULTRASCALE to chdr_ingress_fifo
- Synchronize X300 RX frontends on time change
- tools: Add repeat_fpga_build.py
- tools: Add X410_UC_200 image to X410 package
- Update all RFNoC image core files
- Update RFNoC YAML copyright
- x400: Add 1x64, 2x64, and 1x128 DRAM interconnect
- x400: Add CG_200 RFNoC image cores
- x400: Add ifdef to remove QSFP wrappers when unused
- x400: Add support for X4C, C1, and UC variants
- x400: Add X440 to default make targets
- x400: Add X4C_200 RFNoC image cores
- x400: Fix DB1 timekeeper strobe
- x400: Fix PRC divider register map
- x400: Fix SPI trigger clock crossing
- x400: Make transport adapter width configurable
- x400: Remove CPU_W parameter
- x400: Set QSFP LEDs on startup
- x400: sim: Add 10 GbE with wide CHDR
- x400: Use x410_200 image core for x410_100 images
- x440: fbx: clean up I2C triggers
- x4xx: Refactor MB CPLD code for future devices
- x4xx: Rename x410 -> x4xx for common DTS files
- github
- Fix URL for mailing list
- host
- Add cstdint include to fix gcc-13 compile.
- Add in OpenBSD support to uhd::path_expandvars
- Bump minimum gcc version to 7.3.0
- doc: Add documentation for tertiary, quaternary QSFP adapter
- fix & improve EAL args for DPDK v21.11
- fix build with DPDK v22.11 LTS
- improve DPDK frame_size error message
- docs: Fix link to MSVC Redistributable Package
- python: Update last_gain at end of run_rx_cal loop
- images
- Add X410_UC_200 to manifest
- add X440 dependencies to manifest
- bump x4xx fpga images
- bump x4xx fpga images
- update FPGA images for E3xx, X3xx, N3xx
- Update manifest for SEP throttling
- Update X410 manifest
- lib
- Add default virtual dtor to filter_node
- Add X440/FBX support
- fbx: Remove unused lambda captures
- Fix time-cast for dboard_iface::sleep()
- Mark select x400_dboard_iface methods as const
- Mark selected x400_dboard_iface child methods final
- max287x: Remove unused class attributes
- mb_controller: Minor fixes to logging, formatting
- rfnoc: Fix linter issue regarding virtual dtor
- rfnoc: Fix logic in can_connect_device_to_device()
- rfnoc: Use device cache for rfnoc_graph::make()
- tests: Mark mock pop_host_tasks() as override
- mpm: Add MPM synchronization API
- mpm
- Add ability to query enabled state of ADC/DAC blocks
- Add dboard_info to db_iface initialization
- Add LogRuntimeError class
- Add revE support to zbx_update_cpld
- Add support for X440/FBX
- allow for mpm device to tell host to reboot mpm
- bist: Improve --help message
- Bump compat number to 5.0
- dboard_iface: Remove {set/get}_if_freq() APIs
- dboard_manager: Fix linter issues in dboard_manager/base.py
- Demote sync_tiles() error to warning
- Disable PRC to DB if not required
- e3xx: Fix inheritance order for DB classes
- enable Xilinx API for PLL config
- fix get_product_id in x4xx BIST
- fix GPS lock sensor method name
- Fix test utilities
- Fix ZBX CPLD updater
- lmk04832: Move general APIs to base class
- Move get_dboard_class_from_pid()
- move pop_host_tasks to PeriphManagerBase
- mpmutils: Add parse_multi_device_arg() function
- mpmutils: Fix Pylint warning
- Normalize name for gps_locked sensor
- periph_manager: Remove vestigial Python-six
- Refactor LMK04832X4xx and LMK03328X4xx
- rfdc_ctrl: Change latency argument to signed
- rfdc: Enhance converter checks
- rfdc: Remove set_sample_rate() API call
- Simplify x4xx_bist nsync_fabric
- Update X440 clock policy
- Updated default MCR for X440
- utils: Add LogWrapper
- x440: Move clock info logging out of policy
- x4xx: Add additional args parsing in init()
- x4xx: Add intermediate clock settings to clock policy
- x4xx: add intermediate clocking setting
- x4xx: Add logging for metal and rfdc versions
- x4xx: Add master_clock_rates argument to _set_ref_clock_freq()
- x4xx: add multiple latency detect iterations
- x4xx: Add rfdc rate as a sensor to X4xx dboards
- x4xx: Add UC FPGA type
- X4xx: Change reset strategy to cover all X4xx
- x4xx: Check for tear_down()'s existence
- x4xx: Conditionally initialize DB flash
- x4xx: Enable DBs to have updateable_components
- x4xx: Enable MMCM configuration based on policy
- x4xx: Enable MPM sync API for X410
- x4xx: Explicitly pass MCR values to set_sync_source()
- x4xx: Extend x4xx_rfdc_regs
- x4xx: Factor clock control out of X4xxClockManager
- x4xx: filter MCR list
- x4xx: Improve SPLL comments
- x4xx: Introduce X4xxClockPolicy
- x4xx: Let RFDC control use clock policy
- x4xx: Make sysref_delay part of clock policy
- x4xx: mb_cpld: Add missing bitfields
- x4xx: Minor preparations to x4xx.py for X440 support
- x4xx: Move all clock control to single class
- x4xx: Move common DB tasks from ZBX class to mixin
- x4xx: Move enable_iq_swap to x4xx_rfdc_ctrl.py
- x4xx: Move get_master_clock_rate() to DB-RPC
- x4xx: Move MB CPLD creation to factory
- x4xx: Move SPLL sync before RFDC config
- x4xx: Optimize clock configuration at init
- x4xx: Prepare clock management for multi-mcr
- x4xx: Refactor x4xx_rfdc_ctrl
- x4xx: Remove get_cal_eeprom_spi_node()
- x4xx: Remove internal_temp_sensor
- x4xx: Rename 'both' argum...
UHD 4.5.0.0-RC1
UHD 4.5.0.0 Release Candidate 1
The UHD 4.5.0.0 release adds:
- Support for the NI Ettus USRP X440.
- Bug fixes and improvements for USRP devices. See the changelog.
Changelog:
- b200
- Fix invalid RF switch positions
- ci
- add attempt number to uhd build artifact name on failure
- Add conditions for embedded builds, HW tests
- add pytest args option to test dev pipeline
- add step for x440 embedded runs
- Allow internal fileserver usage for MS installer builds
- Auto-detect conditionals for pipeline stages
- Default to internal fileserver for FPGA images
- Disable PR runs for draft PRs
- Enable X440
- Fix swallowed return codes in CI script steps
- Fix the chocolately version to use
- fixup typo in x440 sdr-test0 template
- increase build timeouts to 90 minutes
- increase win docker image build timeout
- Remove Fedora 35 and add Fedora 37
- select docker image repo directly at container endpoint definitions
- select docker registry based on branch
- splitup x410 test stage in hardware test dev pipeline
- Update CLA Assistant to v2.3.0
- update docker builds to run twice a week
- update docker service connection
- update to build docker builds for all release branches
- updates for new E320 in devtest system
- clang
- Apply clang-formatting to all C/C++ files
- Modify files for treatment with clang-format
- Update clang-format for version 14
- cmake
- Fix auto-detection of Python install directory
- Fix linking DPDK when installed at non-standard location
- cpld
- Adapt CPLD updater for future X4x0 dboards
- debian
- Fix copyright dates in changelog
- devtest
- add exemptions for x440 python API test
- correct docstrings with example being run
- disable rx_samples_to_file_test for x440
- fix typo in error message
- gpio test updates
- remove benchmark_rate test for x440
- docs
- Add page on timed commands
- add python package requirement for usrpctl MPM reset
- add updated msgpack rpc package
- b200: Improve docs (auto MCR, GPIOs)
- Document throttle stream arg
- Fix argument for uhd_image_loader in E3xx docs
- Fix docstring for get_block_chain()
- fix typo and consistency in usrpctl docs
- Improve documentation on timekeepers
- Make X410 dboard a subpage of the X4xx page
- rfnoc: Document RFNoC overrun handling algorithm
- Update clocking theory of operations for X4xx
- update docs for reset command
- update FPGA build docs
- Update X4x0 manual
- Update X4xx manual wrt. self-cal
- x410: Document UC_200 image flavor
- x440: Added FBX to UM daughterboards page
- x440: Extend X4x0 Usage Manual for x440
- examples
- Add power controls to rx_ascii_art_dft.cpp
- Add throttle to replay_capture.py
- Amend tx_waveforms.py to use DramTransmitter
- Fix play region in replay_capture.py
- Remove default --ref and --pps values
- rx_samples_to_file: multi_streamer option
- experts
- Add force_dirty() call
- extension
- windows: Fixed linking extension example to uhd.lib
- fpga
- Add BUILD_BASE_DIR option to makefiles
- Add BUILD_SEED variable
- Add time changed pulse to timekeeper
- Add X440/FBX support
- ci: Add MAX_CPU to pool demands
- ci: Add X410_UC_200 to default bitfiles
- ci: Add X410_UC_200 to release pipeline
- ci: Enable publishing to internal server
- ci: Fix branches
- ci: Include modified manifest in artifacts
- ci: Support parallel jobs for IP builds
- ci: Use different seed for each job attempt
- ci: Use repeat_fpga_build for pipeline builds
- Clear clang-format settings for FPGA code
- docs: Add system memory recommendations
- docs: Clarify design tool requirements
- Fix RFNoC OOT Makefile inclusion
- lib: Add axis_pkt_throttle.sv
- lib: Add clock_div module
- lib: Add ctrl_port_to_wb_i2c module
- lib: Fix IPv4 CHDR TUSER width
- lib: Fix Vivado warnings
- lib: rfnoc: Add resize capability to chdr_stream_endpoint
- lib: rfnoc: Make RFNoC packet gates removable
- lib: rfnoc: Remove redundant packet gate
- lib: rfnoc: Support multiple port widths on crossbar
- Reformat javascript in doc
- rfnoc: Add DEVICE_FAMILY to stream endpoint
- rfnoc: Add throttle to stream endpoints
- rfnoc: Add ULTRASCALE to chdr_ingress_fifo
- Synchronize X300 RX frontends on time change
- tools: Add repeat_fpga_build.py
- tools: Add X410_UC_200 image to X410 package
- Update all RFNoC image core files
- Update RFNoC YAML copyright
- x400: Add 1x64, 2x64, and 1x128 DRAM interconnect
- x400: Add CG_200 RFNoC image cores
- x400: Add ifdef to remove QSFP wrappers when unused
- x400: Add support for X4C, C1, and UC variants
- x400: Add X440 to default make targets
- x400: Add X4C_200 RFNoC image cores
- x400: Fix DB1 timekeeper strobe
- x400: Fix PRC divider register map
- x400: Fix SPI trigger clock crossing
- x400: Make transport adapter width configurable
- x400: Remove CPU_W parameter
- x400: Set QSFP LEDs on startup
- x400: sim: Add 10 GbE with wide CHDR
- x400: Use x410_200 image core for x410_100 images
- x440: fbx: clean up I2C triggers
- x4xx: Refactor MB CPLD code for future devices
- x4xx: Rename x410 -> x4xx for common DTS files
- github
- Fix URL for mailing list
- host
- Add cstdint include to fix gcc-13 compile.
- Add in OpenBSD support to uhd::path_expandvars
- Bump minimum gcc version to 7.3.0
- doc: Add documentation for tertiary, quaternary QSFP adapter
- fix & improve EAL args for DPDK v21.11
- fix build with DPDK v22.11 LTS
- improve DPDK frame_size error message
- docs: Fix link to MSVC Redistributable Package
- python: Update last_gain at end of run_rx_cal loop
- images
- Add X410_UC_200 to manifest
- add X440 dependencies to manifest
- bump x4xx fpga images
- bump x4xx fpga images
- update FPGA images for E3xx, X3xx, N3xx
- Update manifest for SEP throttling
- Update X410 manifest
- lib
- Add default virtual dtor to filter_node
- Add X440/FBX support
- fbx: Remove unused lambda captures
- Fix time-cast for dboard_iface::sleep()
- Mark select x400_dboard_iface methods as const
- Mark selected x400_dboard_iface child methods final
- max287x: Remove unused class attributes
- mb_controller: Minor fixes to logging, formatting
- rfnoc: Fix linter issue regarding virtual dtor
- rfnoc: Fix logic in can_connect_device_to_device()
- rfnoc: Use device cache for rfnoc_graph::make()
- tests: Mark mock pop_host_tasks() as override
- mpm: Add MPM synchronization API
- mpm
- Add ability to query enabled state of ADC/DAC blocks
- Add dboard_info to db_iface initialization
- Add LogRuntimeError class
- Add revE support to zbx_update_cpld
- Add support for X440/FBX
- bist: Improve --help message
- Bump compat number to 5.0
- dboard_iface: Remove {set/get}_if_freq() APIs
- dboard_manager: Fix linter issues in dboard_manager/base.py
- Demote sync_tiles() error to warning
- Disable PRC to DB if not required
- e3xx: Fix inheritance order for DB classes
- enable Xilinx API for PLL config
- fix get_product_id in x4xx BIST
- fix GPS lock sensor method name
- Fix test utilities
- Fix ZBX CPLD updater
- lmk04832: Move general APIs to base class
- Move get_dboard_class_from_pid()
- mpmutils: Add parse_multi_device_arg() function
- mpmutils: Fix Pylint warning
- Normalize name for gps_locked sensor
- periph_manager: Remove vestigial Python-six
- Refactor LMK04832X4xx and LMK03328X4xx
- rfdc_ctrl: Change latency argument to signed
- rfdc: Enhance converter checks
- rfdc: Remove set_sample_rate() API call
- Simplify x4xx_bist nsync_fabric
- Update X440 clock policy
- Updated default MCR for X440
- utils: Add LogWrapper
- x440: Move clock info logging out of policy
- x4xx: Add additional args parsing in init()
- x4xx: Add intermediate clock settings to clock policy
- x4xx: add intermediate clocking setting
- x4xx: Add logging for metal and rfdc versions
- x4xx: Add master_clock_rates argument to _set_ref_clock_freq()
- x4xx: add multiple latency detect iterations
- x4xx: Add rfdc rate as a sensor to X4xx dboards
- x4xx: Add UC FPGA type
- X4xx: Change reset strategy to cover all X4xx
- x4xx: Check for tear_down()'s existence
- x4xx: Conditionally initialize DB flash
- x4xx: Enable DBs to have updateable_components
- x4xx: Enable MMCM configuration based on policy
- x4xx: Enable MPM sync API for X410
- x4xx: Explicitly pass MCR values to set_sync_source()
- x4xx: Extend x4xx_rfdc_regs
- x4xx: Factor clock control out of X4xxClockManager
- x4xx: filter MCR list
- x4xx: Improve SPLL comments
- x4xx: Introduce X4xxClockPolicy
- x4xx: Let RFDC control use clock policy
- x4xx: Make sysref_delay part of clock policy
- x4xx: mb_cpld: Add missing bitfields
- x4xx: Minor preparations to x4xx.py for X440 support
- x4xx: Move all clock control to single class
- x4xx: Move common DB tasks from ZBX class to mixin
- x4xx: Move enable_iq_swap to x4xx_rfdc_ctrl.py
- x4xx: Move get_master_clock_rate() to DB-RPC
- x4xx: Move MB CPLD creation to factory
- x4xx: Move SPLL sync before RFDC config
- x4xx: Optimize clock configuration at init
- x4xx: Prepare clock management for multi-mcr
- x4xx: Refactor x4xx_rfdc_ctrl
- x4xx: Remove get_cal_eeprom_spi_node()
- x4xx: Remove internal_temp_sensor
- x4xx: Rename 'both' argument to 'all'
- x4xx: rfdc: Add get_converter_rate() API
- x4xx: rfdc: Pull fabric words value from registers
- x4xx: Separate RFDC and MMCM resets
- x4xx: Separate RFDC reset from its configuration
- x4xx: Shut down tiles on tear_down()
- x4xx: Trust the clock policy's d...
UHD 4.4.0.0
UHD 4.4.0.0 Release
The UHD 4.4.0.0 release adds:
- Raw UDP Traffic to Remote Destination for RFNoC-enabled devices.
- Bug fixes and improvements for USRP devices. See the changelog.
Changelog:
- Features
- Raw UDP Traffic to Remote Destination for RFNoC-enabled devices
- C API
- Fix double-free issue with sensor values
- ci
- Add clang-format 14.0 to the Ubuntu 22.04 container
- devtest: Test E320 1G FPGA Image
- Filter uhd_find_devices checks by device type
- increase timeout for x4xx hardware test job
- Pull UHD version from UHDConfigVersion.cmake
- Replace Rhombus E320
- Update docker repo location
- cmake
- fix UHDAtomics.cmake to read custom Boost install prefix
- Fix build with GCC 13 (add missing include)
- devtest
- Add multi-spc timed command tests
- docs
- Fix typo in Python API dox file
- Phase noise consideration when using external clock with E320
- rfnoc: Fix Doxygen warnings on chdr_packet::set_metadata()
- Update manual for X3x0 raw UDP streaming
- e320
- Allow internal GPSDO to be powered-down via UHD session args
- e3xx
- add support for power calibration api
- examples
- remote_rx: Add --mac-address argument
- rx_samples_to_file: Add disk write speed check
- rx_samples_to_file: Add multichannel option
- Upgrade RFNoC example to Vivado 2021.1
- fpga
- ci: Create local copy of patches to use
- Cosmetic changes to rx_frontend_gen3_tb
- docs: Fix AR76780 dependency
- e320 Change MIG arbitration to RD_PRI_REG
- Fix overflows in DDC
- Fix overflows in quarterrate downconverter
- Fix warnings in dds_freq_tune module
- lib: Add align_samples module
- lib: Add verilog-compatible wrapper for eth_ipv4_chdr_adapter
- lib: Add ZPU support to SV transport adapter
- lib: Fix indentation in setting_reg.v
- lib: Fix inferred latch in ep_autonegotiation
- lib: Support time and data updates in sim_radio_gen
- lib: Update header for AXI4S add/remove bytes
- Require AR76780 for X3xx and E3xx
- Restore FIR filter in rx_frontend_gen3
- rfnoc: Add align_samples testbench
- rfnoc: Add timed sample alignment to radio
- rfnoc: Fix inferred latch in chdr_strip_header
- sim: Fix typo in clk_wait_f
- tools: Detect check_timing issues during build
- tools: Fix error detection in run_testbenches.py
- x300: Bump FPGA compat to 39.1
- x300: Change MIG arbitration to RD_PRI_REG
- x300: Support advanced transport adapter
- host
- ADC cal: Add ability to set calibration mode explicitly
- cal: Rearrange ADC self calibration routine
- images
- Update manifest - timed sample alignment in RFNoC
- lib
- Fix warning in ctrlport_endpoint.cpp
- topo graph: Fix rule-of-3 related compiler warnings
- mpm
- Add a lock to the rpc server timer
- Better error message for multiple assigned MACs
- Fix rpc process shared state and port argument positions
- Move parse_encoded_git_hash() to mpmutils
- rfdc: Add X4xx 125e6 master clock rate
- rpc server: Capture claim token value before releasing state lock
- x4xx: Remove references to white rabbit
- n3xx
- Increase tune timeout
- octoclock
- Fix type of eeprom object in property_tree
- rfnoc
- Add logging to some throw statements
- lsm: Improve logging/error messages
- Move detection of TAs post-LSM-init
- streamers: Fix scaling factor
- tests
- add ramdisk cfg option to streaming setup
- add support for 10-100GB x410 raw udp
- add x310 raw udp tests
- uhd
- Fix RfnocGraph pybind binding for get_tree
- python: Bind {separate,combine}_device_addr{s}
- python: Make DeviceAddr behave like dict
- When separating device_addr_t, keep indexed values
- Add xport_adapter_ctrl core
- x300
- Enable use of advanced transport adapters
- Respect X300_FW_COMMS_FLAGS_ARP_FAIL flag
- Update firmware for TA control
UHD 4.3.0.0 release
The UHD 4.3.0.0 release adds:
- Extension framework support
- FPGA builds using Xilinx Vivado 2021.1 (B2xx, E3xx, N3xx, X3xx, and X4xx devices)
- Bug fixes and improvements for USRP devices. See the changelog.
Changelog
- ci
- Add n310 rf tests to monopipeline
- Add XQ testing to n321
- Mark SucceededWithIssues as failure
- Remove Fedora 34 and add Fedora 36
- set required capability for windows builds
- Workaround Ubuntu 18.04 systemd bug 1988563
- docs
- Add known issue for Xilinx AR 76681
- Clarify live install and remove version
- examples
- Enable radio loopback for a single radio
- rx_samples_c: Use error_code instead of return_code
- experts
- Move expert framework into public API
- extension
- Add extension example
- Add extension framework
- Add Extension Framework documentation
- features
- Make all feature headers install
- fpga
- ci: Upgrade to Vivado 2021.1
- docs: Upgrade to Vivado 2021.1
- e31x: Add PROTOVER to eth_internal
- e31x: Cleanup MTU parameters
- e31x: Fix IP dependencies
- e31x: Upgrade to Vivado 2021.1
- e320: Bump FPGA compat to 6.1
- e320: Cleanup MTU parameters
- e320: Support advanced transport adapter
- e320: Upgrade to Vivado 2021.1
- Fix target dependencies in Makefile.xxx.inc
- Fix Vivado version check in viv_hardware_utils
- lib: Add advanced features to IPv4 SV transport adapter
- lib: Add chdr_strip_header module
- lib: Add compat to Verilog transport adapter
- lib: Add eth_ipv4_interface_tb
- lib: Add MTU parameter to eth_internal
- lib: Add NET_CHDR_W parameter to transport adapters
- lib: Add RegPort SystemVerilog interface
- lib: Add support for length in tuser in eth_ipv4_add_udp
- lib: Add verilog-compatible wrapper for eth_ipv4_interface
- lib: Fix addsub_hls
- lib: Fix NODE_INST parameter in eth_internal
- lib: Upgrade to Vivado 2021.1
- n3xx: Add BUFG to SPI output line to ease timing
- n3xx: Add PROTOVER to n3xx_mgt_wrapper
- n3xx: Bump FPGA compat to 8.1
- n3xx: Cleanup MTU parameters
- n3xx: Fix async clocks relationship
- n3xx: Remove unused USE_REPLAY parameter
- n3xx: Support advanced transport adapter
- n3xx: Upgrade to Vivado 2021.1
- sim: Support unused tkeep in AxiStreamPacket::dump_bytes()
- sim: Update struct enum initialization
- sim: Workaround Vivado bug in ChdrIfaceBfm_tb
- tools: Add utility to upgrade TCL-based BD
- tools: Allow IP renaming with viv_ip_xci_editor.py
- tools: Fix HLS IP builder for Vivado 2021.1
- tools: Lattice build flow clean-up
- Update makefiles to allow parallel FPGA builds
- Use AR76780 patch for fir_compiler
- x300: Cleanup MTU parameters
- x300: Upgrade to Vivado 2021.1
- x400: Bump FPGA compat to 7.9
- x400: Fix link status detection of 10 GbE IP
- x400: Fix NODE_INST for transport adapters
- x400: Fix transport adapter PROTOVER
- x400: Upgrade to Vivado 2021.1
- x400: zbx: Revision Bump
- zbx: Update HTML regmap
- host
- if monotonic don't run monotonic algo
- images
- Update filesystem images to point to 4.3.0.0-rc2
- update fpgas for vivado 2021.1 upgrade
- update manifest for raw udp streaming
- installer: update ubuntu uhd library verison
- mpm
- bump fpga compat for raw udp streaming
- bump x4xx fpga compat
- MPMD:
- Limit 1GbE MTU discovery to 1500
- python
- Fix error from pybind11 2.10 update
- update to pybind11 for Python 3.11
- rfnoc
- Mutex graph on set_property
- tests
- Setup isolated processors to use performance governor
- tune_map
- Publish and simplify zbx_tune_map
- uhd
- multi_usrp.cpp remove commented out code
- Revert Raw UDP Host Changes
- update to uniform SPDX license identifier
UHD 4.2.0.1 release
The UHD 4.2.0.1 release adds:
- Support for ZBX rev D daughterboard. Hardware change only. No product feature or spec changes.
- Bug fixes and improvements for USRP devices. See the changelog.
Changelog
- cal
- add method to get the current power cal tracking mode
- ci
- Add b210 hardware to rhombus
- add devtest e320 support
- Add devtests to hardware-test-dev
- Add fedora rpm installer build
- Add n310 into devtests
- Add n321 to devtest
- Add new x3xx hardware to rhombus
- Add package builder container entry
- Add package source support to pipelines
- Add recv and send frame tuning for streaming
- Add Windows installer signing
- Build init_usrp example for macOS
- Build init_usrp example for Windows
- call powerbtn multiple times to power on
- change gr-ettus ref to master
- devtests: fix knownhost entry
- Enable root privileges for non-DPDK streaming tests
- Fix mgmt_addr=None entry for X310 DPDK case
- Increase devtest job timeout to 90 minutes
- Make Windows installer job self-contained
- Mark devtest as failure on SucceededWithIssues
- Only include rpm files in the Fedora installer artifacts
- Point meta-ettus repo ref to v4.2.0.0
- Run multiple fpgas per job
- set benchmark rate priority to high
- set meta-ettus-dev repo to zeus-ci
- Set n310 and n321 to specific agents
- streaming: flash x310 fpga
- Update branches to UHD-4.2
- cmake
- Add support for fedora rpm versioning
- Cache UHD_VERSION in all cases
- Drop .deb generation via cpack in favour of better tools
- debian
- Change jellyfish to jammy
- Remove hirsute; add jellyfish support
- Resolve lintian issues
- doc
- Fix generation of man pages
- Remove ZBX phase sync documentation
- docs
- DPDK Linux kernel underruns solution
- Update section on radio transport protocols
- e3xx
- change radio_control_impl mutex to be a recursive_mutex
- examples
- Fix rfnoc_replay_samples_from_file
- gpio: output before end of stream
- gpio: Refactor example
- fpga
- Add READMEs describing Lattice and ADI IP sourcing
- Fix first arg in calls to $fatal()
- lib: Add read-only strategy for port B in 2-port RAM
- lib: Update error call for undefined RW mode
- rfnoc: Remove rfnoc_version from target YAML
- x400: Fix AXI/LBUS testbench names
- x400: zbx: Add support for XO3 CPLD variant.
- host/README.md
- Fix links to knowledge base
- images
- Update manifest with latest cpld firmware
- lib
- Add missing include to offload_io_service_client.hpp
- Remove stray file async_msg.hpp
- mpm
- add support for lattice zbx cpld
- Factor out transport API into PeriphManagerBase
- Fix expected CPLD filename for x4xx
- udp: Fix Pylint warnings in UDP-related files
- x4xx: Make get_chdr_link_types() more generic
- xportmgr_udp: Include iface name in info
- n310
- Improve LO source control options for ALL and LO2 cases
- n320
- Fix reading DB serial in applying corrections
- Improve comments regarding low band
- Revert PLL lock time reduction
- python
- Check rfnoc_version in rfnoc_image_builder
- cmake: Detect python virtual environments
- rfnoc
- Add atomic_item_size property to FFT block
- Add LUA based dissector
- fix double conversions
- Fix register_xport_hop_cfg_fns() usage
- Fix vector use in replay_block_control_impl
- Fix warnings in replay_block_control
- Improve comments regarding streaming and mgmt. code
- Improve documentation for chdr_ctrl_endpoint
- tests
- mark test jobs as an overall failure if there is a test failure
- Remove packet_handler_benchmark
- streaming: add option to run streaming tests in dev pipeline
- streaming: add support for B210 DUTs
- streaming: add support for more DUTs
- streaming: don't set master clock rate on x310
- streaming: fix x310 test case values
- streaming: include dual_SFP parameter for all cases
- streaming: mark non-dpdk failures as xfails
- streaming: pass the correct LD_LIBRARY_PATH to pytest
- streaming: select appropriate uhd config file before test runs
- streaming: temporarily mark b210 dropped samples as an xfail
- streaming: use assert instead of pytest.fail for underruns/overruns
- tools
- package_source remove double bracket
- uhd
- change default into option flag in register definition
- fix minor typo when querying tx sensors property tree
- refactor get_all_addrs to remove duplicates
- usrp2
- Remove unused code segments
- utils
- Remove usrp_e3x0_network_mode
- uhd_images_downloader: Increase default image download size limit
- uhd_images_downloader: Print name of file that exceeds limit
- uhd_usrp_probe: Add DB rev to output
- x300_reset: Make py3k-ready
- x300
- Change order of GPIO banks
- Fix invalid GPIO source bank error message
- zbx
- Remove stray include
UHD 4.2.0.0 release
- A new shipping bitfile, X410_CG_400, enabling 100 GbE 4x4 streaming support at 491.52 MS/s
- X410 DRAM record/replay support. This allows the use of the DRAM in a custom RFNoC application design to capture data from the radio front end or for waveforms to be uploaded from the host to be generated by the radio
- X410 GPIO support, including timed commands
- Many bug fixes and improvements across the entire range of supported USRP devices
Changelog
- b200
- Re-sync times
- Fix overflow handling
- Move the B200 radio control core into usrp/b200/
- cal
- Use safe version of set_thread_priority()
- Fix handling of discontinuities in power calibration data
- chdr
- Rename var max_size_bytes to avoid confusion
- ci
- Weekly builds for UHD-4.2 docker images
- Update builds to macOS 12 Monterey
- Update commit vcpkg and CMake version
- Set continue on error and reduce timeout to 60
- Remove obsolete x4xx pipelines
- Upload devtest logs as artifact
- Propagate downloader errors and lower timeout
- Enable ctest on macOS builds
- Flash fpga on x410 ATS runs
- Add mpm folder to triggers
- Change yaml dependency to ruamel
- Add support for Ubuntu 22.04
- Remove Fedora 33 and add Fedora 35
- Add libuhd python dependencies to macOS
- Add x410 test to mono pipeline
- Enable building of init_usrp
- Make uhdSrcDir directly reference Build.SourcesDirectory
- Build gnuradio and gr-ettus
- Add gnuradio deps to images
- Generate installed binaries for downstream use
- Add displayNames to parameters
- Add embedded builds to uhd mono pipeline
- Separate pipeline builds for different os
- Refactor dockerOSName to buildOSName
- Build on macOS
- Device wait to redlock scope for Vivado close
- Add Fedora 34 and remove Fedora 32
- rebuild docker images weekly
- Refactor installers and add Windows support
- Add gnuradio gr-ettus to oe builds
- Update template to use checkout_meta_ettus
- Add custom boost version support
- Remove documentation-only changes from pipeline runs
- Enable batch CI
- Split CI and PR pipelines for mono pipeline
- Enable custom CXX flags, enable -Werror
- Let make keep building upon failure
- Add clang as a compiler to all Fedora and Ubuntu containers
- Add CLA assistant
- cmake
- mpm: Skip installing binaries for SIM
- doxygen: Make MATHJAX_RELPATH configurable via CMake
- ncurses: fix building with split tinfo
- Remove libatomic check on macOS
- Added libatomic check for boost/lockfree/queue.hpp
- uhdboost: Fix check for UHD_BOOST_REQUIRED being set
- Replace distutils.sysconfig with sysconfig
- Replace distutils with CMake for version checks
- Set debug to -Og for Clang builds
- tests: Conditionally compile tests for X400
- Use LooseVersion to ensure correct version comparisons
- Fix rfnoc-example (CMake paths)
- Fix issues with static builds and CMRC
- Replace CMAKE_{SOURCE,BINARY}DIR with UHD*_DIR
- tests: Add build-python path to PYTHONPATH
- Add check for libatomic linking requirement
- Remove duplicate entry in LIBUHD_PYTHON_GEN_SOURCE
- Fix VS names and use relative for images
- remove redundant include
- Correctly set and unset any CMAKE_REQUIRED variables
- Fix finding PkgConfig to work robustly (without CMake warnings)
- config
- Fix clang fallthrough syntax
- conversion
- Saturate transmit IQ levels on NEON architectures.
- convert
- Make narrowing conversions saturate
- Add benchmarking abilities
- Minor cleanup
- core
- Remove boost::math in favor of std cmath
- dbsrx
- Fix issue with loop variable
- debian
- Update version number to 4.2.0
- Update control and package building
- debs
- Update upload_debs script
- deps
- rpclib: Replace distutils.dir_util with shutil
- devtest
- Clarify data type in multi_usrp_test::send_waveform()
- Add receive stability test to B2xx devtest
- Add receive stability test
- dissectors
- Fix whitespace formatting in CMake files
- Fix inclusion of glib.h and Python version
- docs
- multi_usrp: Clarify GPIO source bank meaning
- x4xx: Document configuring eth0 static IP
- n310: Add Filter API section
- e31x: Update information on GPIO pin header
- Add 100GigE documentation
- Move X4x0 GPIO API to be subpage
- Update E320 docs
- x4xx: Remove redundant GPIO section
- rfnoc: Add doxygen tag for missing parameter
- Improve table on 'identification'
- Update instructions for changing hostname
- Update sfp port config location
- Update manual for new X410 default targets
- Fix Doxygen warnings
- Fix reference to RFNoC documentation
- rdtesting: Remove invalid rate configuration
- stream_args: Clarify usage of stream_args_t::channels
- n3xx: Add info on customizable band edges and gain profiles
- x4xx: Add new FPGA image descriptions
- Improve documentation for replay block
- Remove superfluous stylesheet
- x310: Remove reference to ORC
- Update n3xx tuning notes
- Remove full path names from Doxygen generation
- Add shim Sphinx config for readthedocs
- Improve page on RFNoC block properties
- Fix page on GPIO
- Fix MathJax formulae rendering
- Amend page on RFNoC properties
- Remove bmaptool instructions for writing filesystems
- Remove obsolete man pages
- Update DPDK documentation
- Improve documentation for properties and -propagation
- Several minor manual improvements
- x410: Document GPIO API and capabilities
- Collect all RFNoC block controllers in a module in the manual
- Align dependencies and bump deb package versions
- Clarify set/get_gpio_attr() and GPIO banks
- Fix GPIO documentation example
- x410: Fix info on loading SD card images with bmaptool
- Improve docs for rx_streamer::recv() on overruns
- sync: Update page on synchronization
- Fix typo in ZBX Block Diagram
- usrp_x4xx: improve filesystem update instructions
- x4xx: Update information on CPLD updating
- dpdk
- Add support for DPDK 18.11 API
- Correct MTU warning message
- Support new MTU discovery
- Disable warnings for using an experimental feature
- Upgrade to DPDK 19.11 API
- e31x/e320
- Amend LO-locked sensor names
- e320
- mpm: Remove monitor thread
- e3xx
- Fix frequency querying
- Remove unused constant
- examples
- gpio: Separate bank and port arguments
- Fix channel indexing when reading USRP power
- Fix gain testbench name
- Add replay_capture.py
- benchmark_rate improvements
- replay: Improve rfnoc_replay_samples_from_file
- Support multiple streamers in benchmark_rate
- Fix tx_bursts bandwidth/freq/gain reporting
- Improve rfnoc_rx_to_file
- Use cmul for gain block in-tree IP example
- Test all variants in gain testbench
- Make IQ order clear in gain RFNoC block
- Improve txrx_loopback_to_file (late recv, Boost, timing)
- Show how to use in-tree Verilog header
- Add x400/x410 target to RFNoC example
- fgpa
- rfnoc: Set Replay memory transactions to 2 KiB
- firmware
- Remove N230 firmware
- fpga
- x400: Increase replay SEP buffer sizes
- x400: Add timed commands support for all radio ctrlport endpoints
- Replay block version 1.1
- Update all RFNoC images
- ci: Add X4_400 to CI targets default list
- n3xx: Add missing BIST image core headers
- Use PROTOVER and CHDR_W from RFNoC image builder
- n3xx: Fix clock frequency comments
- e31x: Update DRAM IP simulation
- e31x: Fix DRAM traffic gen IP name
- ci: Schedule weekly FPGA pipeline run
- ci: Improve IP build caching
- ci: Add stages-based pipeline
- ci: Ignore objects in hwtools
- tools: Add CG_400 image to X410 binaries package
- x400: Add x410_400_128_rfnoc_image_core
- rfnoc: Fix PPS edge detection
- rfnoc: Make Replay packet length independent of burst size
- Add SPDX license identifier
- x400: Cleanup FPGA Makefile
- x400: Add support for DRAM with 400 MHz BW
- x400: Change AXI XB for DRAM to 512-bit
- rfnoc: Fix strobe probability in radio simulator
- rfnoc: Regenerate noc_shells
- x400: Set replay SEP buffers to twice MTU
- Add SPDX license identifier
- e320: Add DRAM ports
- n3xx: Fix DRAM FIFO address alignment
- rfnoc: Change AWIDTH default for axi_ram_fifo
- e31x: Add DRAM support
- rfnoc: Add BLANK_OUTPUT to FIR filter block's parameters
- x400: Add DRAM enable macro
- b2xx: Generate utilization report files
- x400: zbx: cpld: Bump ZBX regmap copyright
- x400: cpld: Bump CMI wrapper copyright
- ci: Increase PR pipeline timeout
- x400: Bump minor version
- x400: Update rfnoc_image_core files
- x400: Add Replay to 100 and 200 MHz images
- x400: Add DRAM support
- x400: Set DRAM speed to 2.0 GT/s
- x400: Add axi_inter_4x64_512_bd IP
- x400: Add axi_inter_2x128_512_bd IP
- docs: Add B205mini FPGA info
- n3xx: rh: cpld: Refactor CPLD build process
- Remove noc_shell_regs.vh and sim_rfnoc_lib.svh
- x400: cpld: Bump copyright
- x400: Bump copyright
- x400: Expand PS GPIO port for DIO control
- x400: Add GPIO control via ATR and DB state
- x400: Connect Radio Blocks to DIO
- tools: Fix adding directories for HDL source
- hls: Add version to generated HLS IP
- x400: Fix rfnoc_image_core.vh path
- e320: Connect CTRL_IN pins to FPGA
- e320: Remove copy/paste from N310 code
- x300: Fix time register readback
- usrp2: update build tools to use python3
- tools: Update Vivado scripts to use python3
- x300: OR ATR signals going into db_control
- x400: cpld: Add manufacturing support
- x400: Refactor CPLDs build process
- tools: Add Quartus build utilities
- Add ability to get time from Radio block
- rfnoc: Add RFNoC CHDR resize module
- rfnoc: Add CHDR management u...