Hello,

Yes, that is the purpose of the set_time_next_pps function. When combined
with common 10 MHz and 1 PPS references this allows for stable time
synchronization of 1 sample clock cycle, 5 ns at 200 MS/s. I recommend
reading through the examples which show using all these commands and others
related to streaming multiple channels.
https://github.com/EttusResearch/uhd/tree/maint/host/examples

The manual also covers these topics.
http://files.ettus.com/manual/page_sync.html

Derek

On Thu, Mar 8, 2018 at 11:02 PM, Zhongyuan Zhao <zhz...@cse.unl.edu> wrote:

> Hi Derek,
>
> If USRPs A & B clocked by an Octoclock, are connected to the same host, I
> want calibrate the counter values from USRPs A and B. How can I do it? Is
> this function supported by UHD? If not, could I update the counter values
> in the FPGA Radio blocks? or I can only keep an calibration table of
> counter value offsets on my host?
>
> Thanks!
>
> Zhongyuan Zhao
>
> PhD Candidate,
> Department of Computer Science & Engineering,
> University of Nebraska-Lincoln
> Office Hour: WF 9:30-10:00am, Avery Hall 12,
> Suite 117, Schorr Center,
> Lincoln, Nebraska 68588-0115
>
>
> On Thu, Mar 8, 2018 at 4:42 PM, Derek Kozel <derek.ko...@ettus.com> wrote:
>
>> Hello,
>>
>> The same commands are available in the GNU Radio environment and I
>> believe are exposed in the pre-release Python API branch.
>>
>> The FPGA radio blocks contain a timekeeper which is a counter which
>> increments at the same rate as the master_clock_rate which is the effective
>> ADC/DAC sample rate. This allows for commands to be executed with very fine
>> temporal precision.
>>
>> Regards,
>> Derek
>>
>> On Thu, Mar 8, 2018 at 10:12 PM, Zhongyuan Zhao <zhz...@cse.unl.edu>
>> wrote:
>>
>>> Hi Derek,
>>>
>>> I have two questions about the rx timed samples example,
>>> 1. is there python version for timed command?
>>> 2. Is the time stamp from the clock on USRP or on the host?
>>>
>>> Thanks
>>>
>>> Zhongyuan Zhao
>>>
>>> PhD Candidate,
>>> Department of Computer Science & Engineering,
>>> University of Nebraska-Lincoln
>>> Office Hour: WF 9:30-10:00am, Avery Hall 12,
>>> Suite 117, Schorr Center,
>>> Lincoln, Nebraska 68588-0115
>>>
>>>
>>> On Thu, Mar 8, 2018 at 3:27 PM, Derek Kozel via USRP-users <
>>> usrp-users@lists.ettus.com> wrote:
>>>
>>>> The stream command object has a field for a time spec of when to start
>>>> streaming and a boolean flag for whether to make use of that time spec.
>>>> http://files.ettus.com/manual/structuhd_1_1stream__cmd__t.html
>>>>
>>>> Here we can see it used in an rx example.
>>>> https://github.com/EttusResearch/uhd/blob/maint/host/example
>>>> s/rx_timed_samples.cpp#L92-L93
>>>>
>>>> Usually it is most practical to make a call to get_time_now() and then
>>>> add an offset from that time which is returned. The minimum offset would be
>>>> the roundtrip command time, usually a few milliseconds.
>>>>
>>>> Regards,
>>>> Derek
>>>>
>>>> On Thu, Mar 8, 2018 at 9:03 PM, Andrew Thommesen <
>>>> andrewjoh...@outlook.com> wrote:
>>>>
>>>>> No, how do you do that?
>>>>>
>>>>>
>>>>> Sent from Outlook <http://aka.ms/weboutlook>
>>>>> ------------------------------
>>>>> *From:* Derek Kozel <derek.ko...@ettus.com>
>>>>> *Sent:* 08 March 2018 20:58:38
>>>>> *To:* Andrew Thommesen
>>>>> *Cc:* usrp-users
>>>>> *Subject:* Re: [USRP-users] TwinRx Channel Alignment
>>>>>
>>>>> Hello Andrew,
>>>>>
>>>>> Are you starting the streaming with timed commands?
>>>>>
>>>>> Regards,
>>>>> Derek
>>>>>
>>>>> On Mar 8, 2018 7:32 PM, "Andrew Thommesen via USRP-users" <
>>>>> usrp-users@lists.ettus.com> wrote:
>>>>>
>>>>> Hi all,
>>>>>
>>>>>
>>>>> I have an x310 with a twinRx and would like to process coherent,
>>>>> time aligned data within the FPGA. However, the data is not currently time
>>>>> aligned and there is an offset of ~400 samples between the two channels.
>>>>>
>>>>>
>>>>> The RFNoC radio block is configured to receive data on both channels,
>>>>> with the LO of channel 1 set to companion. The output of the radio block
>>>>> then passes through the RFNoC DDC block that decimates from 100MSPS to
>>>>> 50MSPS. The decimated data then passes to a custom RFNoC block that strips
>>>>> out the timestamps (for loopback). It is within this custom block that the
>>>>> the offset is detected at the output of the AXI wrapper before any
>>>>> processing has taken place.
>>>>>
>>>>>
>>>>> Any ideas?
>>>>>
>>>>>
>>>>> Andy
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Sent from Outlook <http://aka.ms/weboutlook>
>>>>>
>>>>> _______________________________________________
>>>>> 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
>>>>
>>>>
>>>
>>
>
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to