I am using multiple X300/X310s to do a receive beamforming operation with synchronization to both Tx and all Rx devices with Octo-Clock. However I am seeing a constant but random phase shift across different USRPs, such phase shift is random upon each start-up/data collection but remains constant until I turn off the operation.
I had doubled checked that my Octo-clock is functioning properly. I am using GNU radio to drive my devices, and for my USRP source I am having the following set-ups:
Sync: to PC clock after next PPS (I also tried "unknown PPS" and it behaves the same)
Mbx Clock Source: External
Mbx Time Source: External
I am using an ethernet switch to run all my USRPs using 1 PC. My Tx daughter board is SBX and Rx daughter boards are UBXs.
This post describes a very similar situation:
With all of the above synchronization there will be a random amount of constant phase offset between the channels, as documented in figure 6 of: http://www.ettus.com/content/files/kb/mimo_and_sync_with_usrp_updated.pdf This could be responsible for your consistent fractional offset. These needs to be signal processed to ensure alignment.
Unfortunately, the link referring to the answer does not exist anymore and I would like to know the reason and a possible direction to the solution. My array is built on a flexible substrate so it is hard to compensate without knowing more information.
Thanks in advance
I sent a pilot tone of 5kHz with 2.45GHz carrier. At the receiver, I captured the raw data from USRP and directly saves into a file which I process it using MATLAB.