aboutsummaryrefslogtreecommitdiffstats
path: root/host
Commit message (Collapse)AuthorAgeFilesLines
* cmake: Bump dependency versions for UHD 4.0.0.0Martin Braun2019-11-267-148/+18
| | | | | | | | | | | | - Boost >= 1.58 - CMake >= 3.5.1 - gcc >= 5.4.0 - Clang >= 3.8, AppleClang >= 600 - Python >= 3.5 (Py2k no longer supported) - Numpy >= 1.11 - C++14 for lib, include may now use C++11 constructs. - Because there is no more code requiring C++03 syntax, we remove the include-specific clang-format file
* x3x0: DPDK initialization fixmattprost2019-11-251-1/+1
| | | | | Pass original args into the x300_get_udp_factory() function. This exposes the fact that this is a DPDK connection.
* Examples: wrap up ref setting with option checknatetemple2019-11-247-10/+24
|
* Examples: Set refs in RFNoC examplesnatetemple2019-11-242-4/+24
|
* rfx: Fix calculation of prescaler and band selectMartin Braun2019-11-221-15/+22
| | | | | | | | | | | | | | The code was broken when converting from BOOST_FOREACH to a range-based for loop. Without this fix, the board initialization would crash with an error like this: [ERROR] [DBMGR] The daughterboard manager encountered a recoverable error in init. Loading the "unknown" daughterboard implementations to continue. The daughterboard cannot operate until this error is resolved. LookupError: KeyError: key "0" not found in dict(i, N14adf4360_regs_t17prescaler_value_tE)
* Examples: tx_bursts add subdev, ref, lo-offset, bw optionsnatetemple2019-11-221-8/+41
|
* docs: clarifying which devices support DPDKsteviez2019-11-221-3/+6
|
* docs: fixed links where original URL was not accessible anymoreJoerg Hofrichter2019-11-222-2/+2
| | | | Signed-off-by: Joerg Hofrichter <joerg.hofrichter@ni.com>
* utils: query_gpsdo_sensors: Fix ref_lock wait loopMartin Braun2019-11-211-1/+4
| | | | | | The old loop didn't have any output, and had an inaccurate timeout. We now use a timer for a 30 second timeout, and print a . every time we poll the sensor.
* e31x: Remove spurious debug logsMartin Braun2019-11-211-7/+5
| | | | | This demotes INFO logs to TRACE that relate to the switch settings during tuning.
* examples: test_pps_input: Also test for ref_locked on E31xMartin Braun2019-11-211-9/+26
| | | | | | | | | The E31x will always have a valid PPS, because it is generated internally. The external PPS however is used to drive the ppsloop, which means the ref_locked sensor can be a substitute for the PPS, but only on in this case. This commit also removes some superfluous includes from this example.
* python: MultiUSRP: Fix send_waveforms()iprivit2019-11-131-1/+1
| | | | | | | | | | | | | The send_waveform() function takes the waveform_proto array and if it has only 1 channel, explicitly reshapes it to be (1, waveform_proto.size), or uses np.tile to replicate the waveform_proto array over X channels. It then proceeds to loop over the waveform_proto array, but attempts to do so over the channel dimension instead of looping over the actual samples. This results in sending the entire waveform_proto array regardless of the duration specified. The fix is to specify the dimension in which it crops, and not crop in dimension of the channels.
* devtese: Change default Python interpreter to 3Martin Braun2019-11-0812-12/+12
| | | | | | | | | | | Usually, devtest is run via make (or ninja), and will use the correct Python interpreter. When running directly on the command line, it is important to pick the right Python interpreter so it will work with the Python API. Here, we change the default interpreter from Python 2 to 3, because that's the more common version, and will be the only option for upcoming UHD 4.0 anyway.
* docs: added N320/N321 to FPGAmattprost2019-11-071-11/+14
| | | | | Added appropriate references to N321 in the R&D testing doc for the FPGA Functional Verification section.
* docs: Add info on FPGA flavours for E320 and N3xxMartin Braun2019-11-072-1/+50
| | | | This explains what the various FPGA flavours (XG, HG, 1G) are.
* python: Make multi_usrp::get_*_usrp_info() return a Python dictMartin Braun2019-11-041-2/+12
| | | | | | | | | | | By using the conversion ability to std::map<>, we can make the Python versions of get_?x_usrp_info() return a dict in Python. Sample Python session: >>> import uhd >>> U = uhd.usrp.MultiUsrp(args) >>> U.get_usrp_rx_info() {'mboard_id': 'B200', 'rx_subdev_name': 'FE-RX2', ...}
* uhd: dict: Add typecast operator to std::map<>Martin Braun2019-11-043-0/+19
| | | | | | | This will now allow calls like this: uhd::dict<k, v> d = /* ... */; auto m = static_cast<std::map<k, v>>(d);
* python: Included complex.h to allow pybind to convert that data typeerickshepherdNI2019-11-011-0/+1
|
* e3xx: corrected frontend name in devtesterickshepherdNI2019-10-281-1/+1
|
* examples: remove thread priority elevationCiro Nishiguchi2019-10-2226-62/+0
| | | | | | | Remove UHD call to elevate thread priority to realtime. Setting all threads to the same realtime priority can cause the threads to not share access to the network interface fairly, which adversely affects operation of the worker threads in UHD.
* libusb: fix global session race conditionMark Meserve2019-10-161-0/+5
| | | | | - It was possible for two threads to generate a global session, which would cause one of them to become invalid.
* Docs: Adjust FPGA functional verification testsmichael-west2019-10-151-21/+21
| | | | | | | - Reduce long tests from 3600 seconds to 600 seconds. - Remove 2xRX@153.6e6 test for N310 10 GbE (not practical). Signed-off-by: michael-west <michael.west@ettus.com>
* Docs: Fix MPM cmake command for E320michael-west2019-10-151-1/+1
| | | | | | | Add -DMPM_DEVICE=e320 to the command so the E320 version is built and not the N3xx version. Signed-off-by: michael-west <michael.west@ettus.com>
* cmake: Add UHD_COMPONENT variablemichael-west2019-10-154-1/+10
| | | | | | | | Added cmake variable to set the component (currently UHD or MPM). so the banner printed by the log_resource would reference the correct component. Added accessor function and appropriate calls in log.cpp. Signed-off-by: michael-west <michael.west@ettus.com>
* docs: Fix wrong anchor for PCIe transport paramsMartin Braun2019-10-151-1/+1
|
* docs: Fix more Doxygen warnings due to spurious backslashesMartin Braun2019-10-151-5/+5
|
* cmake: Use new UHDBoost.cmake in init_usrp and toolsMichael Dickens2019-10-151-38/+22
| | | | | | | Modifies the CMake for the following utilities: - init_usrp (example) - kitchen_sink - nirio_programmer
* cmake: add UHDBoost.cmake and use it for building UHDMichael Dickens2019-10-153-41/+336
| | | | | | | | | Also install UHDBoost.cmake along with the CMake UHD find scripts, so that it can be used by external modules. Tweak the UHDConfig.cmake script so that, once installed, the new UHDBoost.cmake script is found. Note that the project using UHD must first find UHD before trying to find Boost. Also note that if the C++ standard is not set before UHDBoost is loaded, it will be set to that currently used by UHD: C++14.
* rpc: improve exception handling for reachability checksMark Meserve2019-10-151-2/+3
| | | | | - Handle exception created during RPC client creation - Corrected a catch block for UHD exceptions
* rpc: add exception when client constructor failsMark Meserve2019-10-151-3/+36
|
* rpc: convert client to sptrMark Meserve2019-10-151-12/+13
|
* rpclib: add patch file for constructor hangMark Meserve2019-10-151-0/+36
|
* rpclib: fix hang on connection error during constructionMark Meserve2019-10-151-1/+4
|
* docs: Improve man page compression code in CMakeMartin Braun2019-10-141-24/+11
| | | | | | | | | The existing code would fail on the second CMake run when gzip wasn't actually installed, as well as on the first build. The behaviour is modified as follows: - ENABLE_MAN_PAGE_COMPRESSION is made a variable, instead of an option - Its default value is derived from ${GZIP_FOUND}
* Prepare branch for upcoming UHD 3.15 releaseMartin Braun2019-10-141-2/+2
| | | | | - Update CHANGELOG - Change UHD version to 3.15.0.0 / stable
* rh: Add missing includes in rhodium_cpld_ctrl.hppMartin Braun2019-10-111-2/+4
|
* N3xx: Remove close-in noise on TXMichael West2019-10-111-0/+3
| | | | | | | | | | | Some close-in noise was observed on TX when using external references. This change reduces the noise by changing U19 to select the GPSDO when references are set to external. Also included is a change to properly read and apply settings from the configuration file. This allows the user to further quiet the transmission by adding 'enable_gps=False' to the configuration file in order to power off the GPSDO. Signed-off-by: Michael West <michael.west@ettus.com>
* n3xx: Disable gpsdo reference source when enable_gps=0Martin Braun2019-10-111-1/+8
| | | | | | | | | | | | | | | When using enable_gps=0, the power to the LTE-Lite GPS chip is turned off, and neither the reference sources (time/clock) nor the location/time data (via gpsd) can be used. This commit disables the gpsdo options for the set_time_source, set_clock_source, and set_sync_source when enable_gps=0 is used, and adds logging to inform the user about this. This behaviour is consistent with X310, where `gpsdo` is only a valid reference if the GPSDO module is plugged in. The manual was also updated accordingly.
* fixup! x300: Introduce conn_managerMartin Braun2019-10-111-1/+1
|
* n320: updated rhodium dboard mcr initializationnitest2019-10-101-1/+2
| | | | | db0 is used as the master for driving the radio path and must be the dboard used to set the master clock rate.
* log: Honour log levels on session initMartin Braun2019-10-101-0/+3
| | | | | | | | | | The first log message of UHD is always something like this: [INFO] [UHD] linux; GNU C++ version [...] However, it was being printed regardless of the requested log level. This will disable all initial log messages if the requested log level is greater than INFO.
* docs: twinrx: Reduce res of TwinRX Block diagram and remove artefactsMartin Braun2019-10-101-0/+0
|
* cmake: make manpage compression an optionMichael Dickens2019-10-091-23/+64
| | | | | | If gzip can't be found, compression is turned off, unless the user requested ENABLE_MAN_PAGE_COMPRESSION in which case an error is returned.
* cmake: allow setting of PKG_DOC_DIR from the CMake commandlineMichael Dickens2019-10-091-1/+3
|
* logging: On POSIX, don't use logging colors on non-ttyMarcus Müller2019-10-091-1/+6
|
* examples: Add mode to remove latency of RX samples in latency_testAlex Williams2019-10-071-3/+16
| | | | | | | | The timestamp from the streamer corresponds to the first sample, but a better indicator of transport latency will use the time of the last RX sample. Otherwise, nsamps will reduce the timing budget to send the TX samples. Include this mode to allow latency_test to have a version where there is largely no dependence amongst the variables.
* lib: utils: Add is_a_tty()Martin Braun2019-10-073-0/+88
| | | | | | | This is a portable version of POSIX's isatty(). Windows has its own version, called _isatty(). UHD thus gains its own, portable version. The underscores aren't beautiful, but they're necessary so we can distinguish the POSIX version from the UHD version.
* x3xx: update maximum bitfile sizeMark Meserve2019-10-041-1/+1
|
* python: fix set_command_time default mboarderickshepherdNI2019-10-041-1/+1
| | | | | Fixup for the Python API's default mboard value in multi_usrp::set_command_time.
* Revert "uhd: Check property type at access; error if mismatch"Martin Braun2019-09-304-55/+5
| | | | | | | This reverts commit 94592641f0647563bc4d2163805d5284a6796273. The commit itself was OK, but it changed the requirements such that UHD could only be compiled with C++11.