[USRP-users] sync across hosts/programs

Josh Blum josh at ettus.com
Mon Feb 18 13:58:38 EST 2013

On 02/16/2013 07:23 PM, Qifanski wrote:
> Hi,
> I have a configuration like this and want to phase sync all the USRP N210s
> here:
> 1) all USRPs are connected to the clock with 1pps and 20Mhz ref.
> 2) USRPs are connected to different desktops, programs are running
> independently on these desktops.
> If I want to create a MIMO node out of these USRPs (phase synced), by my
> understanding, I could block all the programs at somewhere and let the
> USRPs wait for the 1 pps signal. As long as the time points these USRPs
> start to wait for the pps vary within 1 second, they should be synced,
> right?
> If so, is before
> uhd::usrp::multi_usrp::set_time_unknown_pps<http://files.ettus.com/uhd_docs/doxygen/html/classuhd_1_1usrp_1_1multi__usrp.html#a413014bf3aea4a8ea2d268b4a3b390e9>
> the
> place I should block all the programs and let them wait for a control
> signal (through socket maybe) ?

1) You want to query last_time_pps() until the value changes. This lets
you know when the PPS edge occurs - to prevent race conditions on the
next call.

2) Then send the desired time to latch into all USRPs on the next PPS
edge. You can do this with some sort of network communication, broadcast
packets, etc...

> Do I need to sync again before send() and recv()?

Just sync the device once before streaming.


> Thanks,
> Qski
> _______________________________________________
> USRP-users mailing list
> USRP-users at lists.ettus.com
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

More information about the USRP-users mailing list