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

Reply via email to