Seems like we are getting closer. The code I use to set the time source is uhd_usrp_set_clock_source(usrp, "external", ALL_MBOARDS); uhd_usrp_set_time_source(usrp, "_external_", ALL_MBOARDS);
Maybe it should not be _external_ by "external" without the "_"s? At least on N200 _external_ works. I don't remember where I got the string, maybe from reading the UHD sources or from the UHD documentation (this was a few years ago). Regarding the ref_locked: no, I am not using the external reference input but the GPSDO. So I will remove the test on this in my code. On N200 it seems okay to test because I think there it tests whether the PLL is locked to whatever clock source is selected. Is that right? Thanks, Sivan On Thu, Jan 3, 2019 at 8:29 PM Marcus D. Leech <patchvonbr...@gmail.com> wrote: > On 01/03/2019 08:53 AM, Sivan Toledo wrote: > > Hundreds of milliseconds, which I think imply that either the PPS is > arriving at a random time (not likely), or that the function that sets the > time at the next PPS actually sets it immediately. > > The only thing i can think of is a setup error. Like not actually > requesting the time source be set to "external" for the B200 case. > > > Otherwise your assumptions about my setting is correct, an N200 and a B200 > each with its own Ettus GPSDO. > > I also noticed another thing that is strange, but maybe not the cause of > my problem; the ref_locked sensor returns false on the B200 (even after I > do all the procedure to set the clock at the next PPS) but true on the > N200. Maybe the B200 simply does not have that hardware feature to check? > Or does this indicates a problem? > > I think on the B200 "ref locked" refers to the external front-panel > reference in. BTW if you are using the external REF-IN on a B200/B210 > you have to remove the internal GPSDO, due to electrical cross-talk on > the REF lines. > > > > On Wed, Jan 2, 2019 at 7:53 PM Marcus D. Leech via USRP-users < > usrp-users@lists.ettus.com> wrote: > >> On 01/02/2019 05:37 AM, Sivan Toledo via USRP-users wrote: >> > Hi, >> > >> > I have a code that reads the GPS time and sets the time on the next >> > PPS using uhd_usrp_set_time_next_pps. The code is based on advice from >> > Ettus (we wait for PPS, wait 200ms, read the time, repeat 3 times, and >> > then set the time correctly for the next PPS after checking that there >> > are at least 200ms left in the second) and it works fine on N200 with >> > GPSDO. >> > >> > The same code causes trouble on B200 with the TCXO based GPSDO. The >> > GPS seems fine and we get a fix, and the code works fine, but the >> > clocks are not synchronized with those of N200s. >> > >> > Is there a known problem with this function on N200s? >> > >> > Thanks, Sivan Toledo >> > >> Just to clarify the picture here, you have an N200 and a B200, each with >> their own GPSDO. You're trying your best to synchronize them >> using the PPS pulse from their respective GPSDOS? >> >> What scale is the lack-of-synchronization? Are we talking nanosecond, >> microsecond, millisecond? >> >> >> >> _______________________________________________ >> USRP-users mailing list >> USRP-users@lists.ettus.com >> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com >> > >
_______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com