| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
This fixes an issue where tinfo and ncurses are split into separate
libraries.
|
| |
|
|
|
|
|
| |
This commit replaces the use of setup() from distutils.core with setup()
from setuptools.
|
|
|
|
|
| |
For RFNoC devices, it now displays "RFNoC capable: Yes", like it did in
UHD 3.
|
|
|
|
|
|
| |
Some comments describing data flow direction were wrong. This commit
updates the Mako files and updates the noc_shell modules with newly
generated versions.
|
|
|
|
|
|
|
| |
This is necessary when compiling with -Werror=format-security as Debian
package builds do.
Thanks to mait for the fix!
|
|
|
|
| |
Thanks to Mait for pointing these out!
|
|
|
|
|
|
|
| |
Adds a --vivado-path option to rfnoc_image_builder that, if present,
gets passed to setupenv.sh for the target device. This can be used to
specify the location of Vivado if it is not installed in one of the
default search locations.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The calibration utilities attempt to bump the transmit thread priority to
realtime to prevent underruns. However, on platforms that use pthread,
`pthread_setschedparam()` typically requires elevated privileges. When
called without those privileges, the code path throws an exception that
is left unhandled, thus terminating the process with an unhelpful error
message.
This commit changes the thread priority function call to use a safe
version which catches any exceptions thrown by `pthread_setschedparam()`
and prints a much more instructive error message without terminating the
process. This gives the user a fighting chance to correct the issue and
successfully use the calibration utilities.
|
|
|
|
|
|
|
|
|
|
| |
Ensure that the signal is at least visible above the noise floor before
attempting to identify gain compression. Another option that was
considered involved starting from the top of the gain range and working
down to avoid this issue, however, that option could expose the device
to unsafe amounts of incoming signal power.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
| |
This is a device-specific parameter to allow for the tune to settle
before proceeding with the calibration. On X410, we set this time to 500
ms. On other devices, we leave it at 0.
|
|
|
|
| |
Added CAL_LOOPBACK and TERMINATION to invalid antenna list
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Co-authored-by: Lars Amsel <lars.amsel@ni.com>
Co-authored-by: Michael Auchter <michael.auchter@ni.com>
Co-authored-by: Martin Braun <martin.braun@ettus.com>
Co-authored-by: Paul Butler <paul.butler@ni.com>
Co-authored-by: Cristina Fuentes <cristina.fuentes-curiel@ni.com>
Co-authored-by: Humberto Jimenez <humberto.jimenez@ni.com>
Co-authored-by: Virendra Kakade <virendra.kakade@ni.com>
Co-authored-by: Lane Kolbly <lane.kolbly@ni.com>
Co-authored-by: Max Köhler <max.koehler@ni.com>
Co-authored-by: Andrew Lynch <andrew.lynch@ni.com>
Co-authored-by: Grant Meyerhoff <grant.meyerhoff@ni.com>
Co-authored-by: Ciro Nishiguchi <ciro.nishiguchi@ni.com>
Co-authored-by: Thomas Vogel <thomas.vogel@ni.com>
|
|
|
|
|
|
| |
- Whitespace issues
- Unclear help messages
- Unnecessary derive-from-object
|
|
|
|
|
|
| |
This change adds the ability to specify in the YAML description for
your RFNoC image what the rfnoc_image_core should be named. This allows
you to have multiple RFNoC image cores generated for the same target.
|
|
|
|
|
|
|
|
|
| |
Previously, uhd_usrp_probe would simply print "RX Dboard: dboard"
as the header for RFNoC dboards. This was not very informative,
so this change prints out the block ID to get a little bit more
information.
Non-RFNoC dboards retain their old functionality.
|
|
|
|
|
|
|
| |
Increase thread priority on TX thread and remove memory copy to reduce
underruns.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
Added "n320" to supported devices and set TX and RX sample rates to
12.288 Msps.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
vcpkg can be used for the Windows C++ dependencies for uhd with this commit.
To use vcpkg on Windows:
1) Copy the custom triplets in host/cmake/vcpkg/ to the vcpkg/triplets/ folder.
2) Install boost and libusb for the custom triplet
"vcpkg install libusb:uhd-x64-windows-static-md boost:uhd-x64-windows-static-md"
3) Call CMake with vcpkg toolchain file flags:
-DVCPKG_TARGET_TRIPLET=uhd-x64-windows-static-md
-DCMAKE_TOOLCHAIN_FILE=%VCPKG_INSTALL_DIR%/scripts/buildsystems/vcpkg.cmake
-G "Visual Studio 16 2019" -A x64
Replace the -G with the installed version of Visual Studio and matching
architecture. Then build normally by running vcvarsall.bat and msbuild.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
| |
This is potentially a performance issue, even though it doesn't have
a big impact in this context. Clang will warn about it, and this fixes
the compiler warning.
|
|
|
|
| |
This reduces compiler warnings.
|
|
|
|
|
|
|
|
|
| |
The checks from the new clang-tidy file are applied to the source tree
using:
$ find . -name "*.cpp" | sort -u | xargs \
--max-procs 8 --max-args 1 clang-tidy --format-style=file \
--fix -p /path/to/compile_commands.json
|
| |
|
|
|
|
|
|
|
|
|
| |
This allows the image downloader to download files from restricted sources
using HTTP basic auth, specifying the credentials in the UHD_IMAGES_USER and
UHD_IMAGES_PASSWORD environment variables:
```
UHD_IMAGES_USER=lane UHD_IMAGES_PASSWORD=MyS3cretPassword uhd_images_downloader.py
```
|
|
|
|
|
| |
This parameter isn't used by any callers of the function. Additionally,
it doesn't actually change the default answer.
|
|
|
|
|
|
|
|
|
|
| |
Separated output of GPGGA and GPRMC strings into separate try/catch so
each one would display independently. Resolves issue of GPGGA string
not displaying on devices that don't support the GPRMC string.
Also removed unnecessary uses of boost::format.
Signed-off-by: michael-west <michael.west@ettus.com>
|
| |
|
|
|
|
|
|
|
| |
Added unload-bootloader option to cleanly unload a previously loaded
bootloader image. It properly moves the VID, PID, and EEPROM data.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
| |
- update_fbs.py would use git directly, instead of the requested git
executable
- There are other corner cases for the git executable detection, which
are now all captured under a more general exception type
Credit to Christopher Friedt for pointing out the original issue.
|
|
|
|
| |
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
| |
- Fix some typos
- Fix incorrect arg name for RFSGPowerGenerator.enable()
- Fix case where incorrect args would cause an uncaught TypeError. Now,
if USRP is chose as signal generator, but fails to find one, a proper
error is shown.
|
|
|
|
|
|
|
|
| |
This changes the default name of the image core file to
<DEVICE>_rfnoc_image_core.v instead of naming it after the YAML file.
This ensures that when you use a custom YAML file, the resulting
FPGA build will use the generated rfnoc_image_core and static_router
files, rather than just the generated static_router file.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Each version of flatbuffers (might) generate different header files
for the same schema file. Therefore we cannot compare the content
of the generated headers to detect changes in the schema that are
not accompanied by a change in the generated header.
To have at least a minimal check that the schema matches the
generated header we compare the git hashes of both. We will not
allow to change the schema without changing the header and vice
versa. This condition is checked by a unit test.
|
|
|
|
|
|
|
| |
- The UHD auto-detection was broken. Now it can find UHD in the same
directory.
- The main() function was split into main() and run(), which would allow
loading this module and calling run() as it's own function.
|
|
|
|
|
| |
This makes the utility warn the user when they pass a path argument that
is invalid; the utility falls back to defaults if this occurs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Current implementation needed manual interaction to calibrate each
antenna. More sophisticated setups are able to switch between channels
and antennas programmatically.
This commit introduces a base class that handle the switch behaviour. The
previous implementation moved to a ManualSwitch class which is the
default switch. Without any options the previous flow remains unchanged.
A new class is able to handle NI switch models. The switch port can
be given via options parameter (comA is default). The channels are connected
in ascending order. The user has to ensure that the cable setup matches
the order given for channels and antennas.
Co-authored-by: Martin Braun <martin.braun@ettus.com>
|
| |
|
|
|
|
| |
This is a tool for running power calibration.
|
|
|
|
|
|
| |
This complements b721621. In that commit, we directly go to HTTPS, but
in either case (direct or indirect) the --http-proxy command line
argument did not use the proxy for https.
|
|
|
|
|
| |
When the FPGA repository was merged back into the UHD repository, this
line was forgotten.
|
|
|
|
|
| |
usrp_burn_db_eeprom operates directly on property tree paths, and so the
utility required an update to work with RFNoC devices.
|
|
|
|
|
|
|
|
|
| |
In commit 6a488d32, the RFNoC image builder module was moved from the
host/utils/bin subdirectory to host/utils. That move rendered the relative
path to the configuration directory in `get_config_path()` incorrect.
This commit fixes the relative path specification of the configuration
directory to reflect the new location of the
Python script.
|
|
|
|
|
|
|
| |
This removes the 'six' dependency from converter_benchmark, thus making
the utils subdirectory no longer depend on six.
A few Python2-isms and PyLint issues were also fixed.
|
|
|
|
|
|
| |
This cleans up the default parameters generated for the testbench
template and adds the block parameters to the block and noc_shell
instances so they can be used without having to remember to add them.
|
|
|
|
|
|
|
| |
This changes two things in all applicable files:
- Remove imports from __future__
- Change default shebangs from /usr/bin/env python to /usr/bin/env
python3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note: This commit changes nothing to the way the image builder is being
called. One can still run
rfnoc_image_builder [...]
as before. The difference is in the Python guts:
Where previously one had to do
import rfnoc
now the incantation becomes:
from uhd import imgbuilder
(Note that the submodule uhd.rfnoc already exists for wrapping the RFNoC
API into Python, hence the renaming from rfnoc to imgbuilder).
This is done for a variety of reasons:
- Now, there is only one and exactly one Python module for UHD that
contains all the things, as opposed to before where there were two.
- The rfnoc and uhd modules were installed in different ways (setuptools
vs. CMake); that is now harmonized. This also removes a lot of CMake
plumbing.
- It is not common to import the rfnoc module for anyone other than
rfnoc_image_builder
|
|
|
|
|
| |
replaced boost::timer by std::chrono::steady_timer to
measure time interval
|