On 06/02/2024 17:04, zackk...@utexas.edu wrote:

Hello!

I am trying to do something very similar to the rx_samples_to_file example here <https://github.com/EttusResearch/uhd/blob/master/host/examples/rx_samples_to_file.cpp>. In this script, if multithreading is selected, then a different call to recv_to_file spawns for each channel, which in turn creates a different rx_streamer for each channel.

I modified the code to specify the uhd::time_spec_t that feeds to each stream_cmd.time_spec, outside the loop so that the streaming start time for each channel is identical.

I have only tried with 2 channels so far. I have a GPS L1 signal connected to each port corresponding to my 2 channels, and I am using a USRP X410. If I capture at the same rate for both channels, I show that they start at an identical time (to the nearest ns). When I change the rate of the second channel, I then have a difference of about 732ns.

The rates I choose are 9830400 Msps and 20480000 Msps. These correspond to the master clock rate of 245760000 divided by 25 and 12 respectively.

Does anyone have an idea as to how to align the captures?

Thanks!


_______________________________________________
USRP-users mailing list --usrp-users@lists.ettus.com
To unsubscribe send an email tousrp-users-le...@lists.ettus.com
There's a timestamp associated with each sample buffer that comes back from a _recv() call.   That is often used for alignment,
  although with differing sample rates, alignment cannot be perfect.

_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com

Reply via email to