There is a motherboard sensor that you can query to check the ‘ref_locked’ 
status.

However, I had noted its behavior during clock loss is inconsistent across 
models. In UHD 4.1 (and I’m working from memory here), some models (e.g. E320) 
check a digital lock-detect signal and always report the current lock status.  
Other models (e.g. N320) query a register which latches a bit when the external 
clock is lost, and the latched bit is only cleared during initialization. On 
these models, once the external clock is removed the ‘ref_locked’ sensor will 
continue to return false even if the clock is later reapplied while running.

I can’t specifically speak to the B200 or UHD 3.15.

Hope this helps,
David

From: Marcin Puchlik <puchlikmar...@gmail.com>
Sent: Friday, May 13, 2022 10:38 AM
To: Marcus D. Leech <patchvonbr...@gmail.com>
Cc: usrp-users@lists.ettus.com
Subject: [USRP-users] Re: Why do we need 1 PPS and 10 MHz signal to synchronize

But you know what I observed and what is weird? When I ask for an external 
source and I intentionally turn off the external generator providing a 10 MHz 
signal, USRP behaves as if it was still seeing a 10 MHz reference signal at its 
input. Doesn't matter if the generator is switched on or off - USRP behaves the 
same way. Because of that I am  not sure if USRP is being clocked from an 
internal or external clock source. Is it the bug in the GNU radio or UHD or am 
I doing something wrong? How can I get the feedback from the USRP hardware that 
it was locked to the external clock? Is it even possible?



śr., 11 maj 2022 o 16:14 Marcus D. Leech 
<patchvonbr...@gmail.com<mailto:patchvonbr...@gmail.com>> napisał(a):
On 2022-05-11 09:51, Marcin Puchlik wrote:
Will it be enough to clock USRP from the external 10 MHz signal generator? When 
I run the flowgraph I cannot see the information that is using the external 
clock. Here is the output from GNU Radio:
[INFO] [UHD] linux; GNU C++ version 9.4.0; Boost_107100; 
UHD_3.15.0.HEAD-0-gaea0e2de
[INFO] [B200] Detected Device: B200
[INFO] [B200] Operating over USB 2.
[INFO] [B200] Initialize CODEC control...
[INFO] [B200] Initialize Radio control...
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Setting master clock rate selection to 'automatic'.
[INFO] [B200] Asking for clock rate 16.000000 MHz...
[INFO] [B200] Actually got clock rate 16.000000 MHz.
[INFO] [B200] Asking for clock rate 51.200000 MHz...
[INFO] [B200] Actually got clock rate 51.200000 MHz.
[INFO] [MULTI_USRP]     1) catch time transition at pps edge
[INFO] [MULTI_USRP]     2) set times next pps (synchronously)
[INFO] [B200] Asking for clock rate 51.200000 MHz...
[INFO] [B200] OK
[INFO] [B200] Asking for clock rate 51.200000 MHz...
[INFO] [B200] OK
[WARNING] [AD936X] Selected Tx sample rate (0.2 MHz) is less than
analog frontend filter bandwidth (0.2 MHz).


[cid:image001.png@01D866C3.90392670]

Yeah, I don't think it puts out an "i'm locked to the external reference" 
message.

But you've asked for "external" clock source, so you should be good to go, 
assuming your external generator meets the requirements.



śr., 11 maj 2022 o 15:24 Marcus D. Leech 
<patchvonbr...@gmail.com<mailto:patchvonbr...@gmail.com>> napisał(a):
On 2022-05-11 09:18, Marcin Puchlik wrote:
Marcus,
Thank you very much for the answer. Does it mean that 1 PPS signal is optional? 
Can I only provide an external 10 MHz clock without 1 PPS?
Z poważaniem
Marcin Puchlik
Yes, absolutely.  If timestamp synchronization is not important to you, then 
you can just provide a 10MHz reference when you want better
  frequency accuracy and drift characteristics than are offered by the on-board 
clock and/or you want some type of phase-synchronization
  but don't care much about mutual phase offsets....








śr., 11 maj 2022 o 14:24 Marcus D. Leech 
<patchvonbr...@gmail.com<mailto:patchvonbr...@gmail.com>> napisał(a):
On 2022-05-11 06:17, Marcin Puchlik wrote:
Hello Community,
Like in the topic, I know that a stable 10 MHz source is needed as a clock 
signal but why do we need 1 PPS signal? How is it used by the USRP hardware? 
Can someone explain that to me?
Thanks
Marcin


_______________________________________________

USRP-users mailing list -- 
usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com>

To unsubscribe send an email to 
usrp-users-le...@lists.ettus.com<mailto:usrp-users-le...@lists.ettus.com>
1PPS is used to provide timestamp-clock synchronization across multiple 
devices, typically.  This is important when your application requires this, 
such as in MIMO or
  multi-receiver TDOA schemes, etc.

Basically, when you have multiple devices you use set_time_unknown_pps() or 
set_time_next_pps() to signal to all devices in your multi_usrp object  that at 
the next
  1PPS, to set the timestamp clock to the value given in the the API call.

This turns out to be useful even in single devices that are "bicameral", such 
as B210 and X310, where there are (for historic and architectural reasons)
  TWO timestamp clocks.  Use the 1PPS synchronization primitives causes the 
internal timestamp clocks to become synchronized.

_______________________________________________
USRP-users mailing list -- 
usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com>
To unsubscribe send an email to 
usrp-users-le...@lists.ettus.com<mailto:usrp-users-le...@lists.ettus.com>


_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com

Reply via email to