Hi Chris, I'm sorry to be the bearer of bad news, but the X410 does not have this feature (and yes, the X440 does).
--M On Thu, Feb 19, 2026 at 3:31 AM Chris Wozny <[email protected]> wrote: > We're working on a two-channel phase interferometry application using an > X410 with two ZBX daughterboards and am having difficulty achieving > consistent inter-channel phase measurements across application restarts. > I'm hoping someone on the list has experience with this and can point me in > the right direction. I've found quite a few emails on the mailing list from > about a year ago on the topic, but they didn't seem to have a resolution > (as far as I could tell). > > Here's my current configuration: > > NI USRP X410 (Rev 7) > Two ZBX daughterboards > MPM Version: 5.3 > FPGA Version: 8.3 (UC_200) > FPGA git hash: c37b318.clean > > I'm using UHD 4.7.0.0 with the Multi_USRP API in C++. The ports I'm > connected to are the RX1 SMA ports on the same daughterboard (A:0 and A:1). > The X410 is also connected to an external 10 MHz + 1 PPS reference from an > Octoclock. I'm feeding these receive ports with a pulsed waveform from a > signal generator connected via a splitter. > > Problem: > > Within a single execution of the application, the phase difference between > the two channels is extremely stable and consistent pulse-to-pulse. > However, when the application is restarted the phase offset changes to an > essentially arbitrary value. Across five consecutive runs we observed delta > phase values of approximately -25, -154, -25, 74, and -119 degrees at 3050 > MHz. > > The same code (timed command tune requests) and test equipment setup was > working with an X310. The phase differences were consistent over a period > of a few days of application restarts and power cycles. It seems like there > are some fundamental architectural differences between the X310 with two > UBX-160s and the X410 with two ZBXs that prevent the same task from being > accomplished. > > Here are the steps we've taken thus far to try and get the same initial > phase on both channels from one run of the application to another: > > 1. Switched clock and time source to "external" to lock to the Octoclock's > 10 MHz and 1 PPS reference and polled the ref_locked sensor before > proceeding. > 2. Used set_time_next_pps() rather than set_time_now() to latch device > time on a PPS edge, followed by a sleep longer than one second to guarantee > the latch has occurred. > 3. Configured subdev spec (A:0 A:1), per-channel parameters (sample rate, > bandwidth, gain, antenna), and get_rx_stream() all after the ref_locked > wait and PPS latch. > 4. Issued simultaneous tune commands to both channels using > set_command_time() aligned to the next PPS edge > (get_time_now().get_full_secs() + 1.0), followed by another sleep greater > than 1 second to allow LO lock. > 5. Attempted explicit LO sharing via set_rx_lo_source("internal", > "LO1"/"LO2", chan) on both channels, however set_rx_lo_export_enabled() was > not supported on this radio so we abandoned that. > > The within-run phase stability is excellent (sub-degree variation > pulse-to-pulse), which suggests the hardware is working correctly. The > problem appears to be that something is initializing to an arbitrary phase > state on each UHD session that is not being reset by any of the above steps. > > The ultimate question we have: with an X410 and two ZBX daughterboards is > multi-channel phase coherence across multiple UHD sessions possible? If so, > are there any steps we might be missing or out of order from what we tried > above? Feeding in a known signal every time we start a session is not an > option. > > There was some chatter in the mailing list about newer versions of UHD > resolving this, but other replies from March 2025 left it ambiguous (to me > at least) as to whether this was fixed for X410s or X440s or fixed at all. > > Any guidance you all might provide is greatly appreciated! > > Best, > Chris > _______________________________________________ > USRP-users mailing list -- [email protected] > To unsubscribe send an email to [email protected] >
_______________________________________________ USRP-users mailing list -- [email protected] To unsubscribe send an email to [email protected]
