Hi all,

I am very new to Gnuradio and USRP, and I have a question about the code
transmission delay between USRPs.
I have two USRP E310 with UBX160 daughterboards. I send a sequence of code
from one USRP using simple amplitude modulation, and receive it by another
USRP. On the receiver side, I use a replica of the code to cross-correlate
with the received code to compute the transmission delay. However, I can’t
explain this delay I obtained:

   1. when I set the sample rate to 200MHz/128, the delay is 26.837 us (≈
   42 samples);
   2. Sample rate to 200 MHz/256, the delay is 0.0537 ms (≈ 42 samples);
   3. Sample rate to 200 MHz/512, the delay is 0.105 ms (≈ 41 samples).

Also I recorded the date received by the USRP, it clearly shows that, no
matter the sample rate is, the USRP source starts to receive the code after
the 41st samples, and before are some strange values. You can find them in
the attached plot.

My questions are

   1. why the transmission delay of the code are based on certain number of
   samples? should it be a certain value (some micro or Pico second)? In my
   case this delay changes with the sample rate.
   2. what are those values received by USRP before the received code? they
   have some similar behaviors.
   3. Maybe it’s not the correct way to check the transmission delay. Is
   there any better method for measuring it (e.g. adding time stamps)? I used
   USRP “rx_time” stream tags, and it always shows (xxx, 5e-9), like when it
   starts to receive something, maybe only the noise.

(Additionally, both USRPs have their 1 PPS and frequency ref synchronized
to the external high quality atomic clock. And I set them to start
transmit/receive data at exactly the same time.)

I appreciate a lot for any comment or advice !

Reply via email to