Hi.I use USRP B200 with external on-board GPSDO.1. I set the clock source and
time soure to GPSDO usrp->set_clock_source("gpsdo", 0);
usrp->set_time_source("gpsdo", 0);2. Set_time_next_pps and sleep 2 secs.
usrp->set_time_next_pps(uhd::time_spec_t(0.0), 0);
boost::this_thread::sleep(boost::posix_time::seconds(2));3. Issue the stream
command to start the stream from 3.0 seconds. uhd::stream_cmd_t
stream_cmd(uhd::stream_cmd_t::STREAM_MODE_NUM_SAMPS_AND_DONE);
stream_cmd.num_samps = 100; stream_cmd.stream_now = false; const
uhd::time_spec_t stream_time = uhd::time_spec_t(3.0); stream_cmd.time_spec =
stream_time; rx_stream->issue_stream_cmd(stream_cmd);4. Start the Rx streams
and check received time. size_t num_rx_samps =
rx_stream->recv(&buff.front(), buff.size(), md, 5.0);
---------------------------------------------------------------------------------------------------
Received packet: 100 samples, 3 full secs, 0.000037 frac secs Stream
time was: 3 full secs, 0.000000 frac secs Difference between stream time
and first packet: 37.093750 usI command to start receving from 3.0 seconds, but
the USRP B200 does not start at exact time(there are some delay, 37us).I guess
it seems normal.(a)But is there any method to overcome this tiny difference? at
least below 10 us.(b)Is the difference always same? If not, Could you tell me
which things could change the difference? (c)Can I solve the problem If I set
the stream time to 3.0s - 37us?It will be very appreciated if someone could
answer the above three questions!Thanks in advance.
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com