| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
| |
- Put ADF4351 at fixed integer-n mode IF freq
- Set ADF4351 in low noise mode
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
| |
This updates the RFNoC image to generate code that's a bit more tidy,
with consistent spacing and better alignment.
|
|
|
|
|
|
|
|
|
|
|
|
| |
MTU discovery is passing on sizes beyond the maximum size, which allows
packets to exceed the default MTU size of 8000 set for 10 GbE. This
can cause TX to stop when using higher sample rates.
Reducing the maximum frame size to 7972 (8000 minus 28 bytes for UDP
and IP headers) guarantees the packet size will never exceed the default
MTU for 10 GbE.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
| |
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
| |
This commit adds a device::register_device which allows uhd to start up
a simulator when uhd is called with the arguments type=sim. Creating the
device object creates a subprocess using pybind and an embedded
interpreter, and destroying the object cleans up those subprocesses.
Signed-off-by: Samuel O'Brien <sam.obrien@ni.com>
|
|
|
|
|
|
|
| |
Fixes incorrect value for the DDS_GAIN that was causing the TX output
power to be 6 dB lower than it was supposed to be.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The streamers were keeping a reference to the multi_usrp object, so the
object would not destruct when the user deleted or reset the shared
pointer to the object. An error would occur if the user attempted to
make the same device and get streamers on it without explicitly deleting
the streamers first.
This change refactors the code such that the streamer destructor only
depends on the existence of a weak_ptr to the underlying rfnoc_graph
and a vector of edges returned by the connect function. It checks to
see if the graph has been deleted before calling the functions to
disconnect the edges. This allows the multi_usrp object and streamer
objects to be destructed in any order.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
| |
This commit expands the scope of the former _release_mutex, renaming it
_graph_mutex and ensuring that all graph modification functions are
serialized against each other. This ensures that callers to graph_t's
public functions are always operating on a coherent view of the
underlying BGL graph object.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The graph_t::disconnect(src_node, dst_node) function removes connections
(edges) from src_node to dst_node in the graph, and then removes the
nodes (vertices) if their degree is zero after removing the connections.
Because removing a vertex from the graph invalidates vertex descriptors,
the graph_t::_remove_node() function resynchronizes the node-to-vertex
descriptor map after removing the vertex.
However, in graph_t::disconnect(), the vertex descriptor corresponding
to dst_node was not being refetched after the potential removal of
src_node, which results in the incorrect removal of innocent nodes under
certain circumstances. This commit ensures that the node-to-vertex
descriptor is reconsulted for the vertex descriptor corresponding to
dst_node before removing it from the tree.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Example:
>>> usrp = uhd.usrp.multi_usrp("")
>>> tree = usrp.get_tree()
>>> print(tree.access_int("/name").get())
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
This helps with recompilation times of UHD.
No functional changes.
|
|
|
|
|
|
|
|
| |
The implementation was not properly configuring the stream command if
the --random flag was used. It was especially bad when multiple
channels were specified.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
The rpclib server session closes its socket, which can fail. In our
case, we only use the server for some tests, and we close the server on
process exit, so we let the error slide. Since we close servers in
dtors, not doing so would occasionally cause SIGABRT.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The N310 had a different behaviour from other devices, where setting
a gain out of range would cause an assertion error. This is problematic
for two reasons:
1) Assertion errors should not be triggered by public APIs (if we throw
public APIs, we should give a clear error message), and
2) Setting gain and frequency has a coercing behaviour on all other
devices.
This changeset clips the gain before calling into the gain table lookup.
|
|
|
|
|
|
|
| |
This allows the b200 devices to recover from overruns that occur during
continuous streaming.
Signed-off-by: mattprost <matt.prost@ni.com>
|
| |
|
| |
|
|
|
|
|
|
|
| |
When ENABLE_SIM and ENABLE_PYTHON_API are set, this commit embeds MPM
(Built with -DMPM_DEVICE=sim) into the pyuhd package.
Signed-off-by: Samuel O'Brien <sam.obrien@ni.com>
|
|
|
|
| |
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
| |
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
|
| |
This lets you declare registers like this:
REG_NAME[ARRAY_LEN] ADDRESS[BITS] DEFAULT ENUMS
The reg object will now carray REG_NAME as an array. So, you can do
regs.REG_NAME[0] = VALUE;
|
|
|
|
|
|
|
| |
Add COMMON_PY_TMPL which is identical to COMMON_TMPL in functionality
but generates Python syntax rather than C++ header syntax. Modify the
generate function which will now determine if the destination regmap
file is a Python file or not and will use the appropriate template.
|
| |
|
|
|
|
|
|
|
| |
mpmd find doesn't respect the "resource" arg hint and can be detected
when "resource" is set. This results in incorrect device selection when
using PCIe. This change adds detection for "resource" as a prefix
in the device hints for mpmd and the other devices.
|
| |
|
|
|
|
| |
This resolves an issue with building on older compilers.
|
|
|
|
|
| |
It could be possible that we only find one SEP connected edge, which
should be invalid.
|
|
|
|
|
|
|
|
|
|
|
| |
The conditional setting of some variables lead the compiler to assume
they might be used uninitialized. Circumventing compiler warning by
initializing variables to a default value, even if that's not the right
value (they will get set later).
Also applied clang-format to the same code section.
This fixes da1aeaeccc.
|
| |
|
|
|
|
|
|
| |
To make the debug output of the database more readable
the has_cal_data lookup for RC data prints the file that
is looked up similar to the lookup for file system.
|
|
|
|
|
|
| |
Update dependencies from python to python3.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
- Update CHANGELOG
- Update debian files
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
| |
- Add missing "uhd/" subdirectory.
- Update install path for YAML file.
- Fix include directories and link libraries for init_gain_block.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
| |
The loopback test sometimes fails. It was found that it would pass on a
retry. The root cause of the failure is unknown at this time, but the
retry allows the test to pass. This is intended as a temporary patch
until the root cause of the failure can be identified.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
| |
Boost 1.67 will fail to build some tests that include mock_transport.hpp
if an additional include is missing.
|
| |
|
|
|
|
|
|
|
|
|
| |
Updates e3xx and n3xx register map documentation.
- Add new RFNoC registers
- Remove depreicated RFNoC registers
- Add other missing registers
- Correct formatting
|
|
|
|
| |
Signed-off-by: mattprost <matt.prost@ni.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
There were locks in the apply_tx/rx_fe_corrections() methods that were
acquired before calling methods that re-acquired the locks. The mutexes
were not recursive, so it caused applications to lock up. The locks
are unnecessary in the top level methods, so they are being removed.
Signed-off-by: michael-west <michael.west@ettus.com>
|
| |
|