Application for using the 2 RX channels simultaneously

Hi IgnasJ,

I’m using LimeSDR v1.4 to receive two channels coherently, using “phase alignment” branch.
I would like to ask if the automatic channel alignment is merged in Master, and if I Can use it without loosing coherence.


phase alignment is merged into master.

Thanks @IgnasJ.

One more question.
I keep experiencing the 180º phase jump (for example, in the 10% of the cases).

Is there a way to detect the phase jump at the StartStream, without using an external calibration signal?
It would solve a lot of problems for me.


To detect the 180º phase jump, you need to feed the same signal into both Rx channels but there is no way to do it using LimeSDR board only without external components (using leakage does not seem to be reliable). I think that to detect it reliably, you need to connect either external signal or signal from one of Tx outputs via splitter to both Rx channels and then check phase offset between channels.

Hi @IgnasJ , in order to use the phase alignment branch do I have to activate anything?
How can I know if this feature is active?

Thanks In advance

We are developing array processing algorithms and we would like to use LimeSDR-USB as a hardware platform.
I tried to check the time allignment and the phase coherence between Rx0 and Rx1.
For this purpose the following experiment was performed:
During one run a sequence of chirp waveforms [Fc-Fdev, Fc+Fdev] was sent from Tx0.
Then, based on the received signals from Rx0 and Rx1, the phase difference between channels for different frequencies was evaluated.
The experiment was performed several times (several runs) to collect statistics about the behaviour of evaluated parameters.
In the end, I have obtained the following results

This is collection of histograms of phase differences vs frequency. As I understand, the results shows the presence of the time offset between ADCs,

histogram of time offsets in terms of fraction numbers of the sampling interval,

histogram of drift of phase between channels with time for one run - no questions.

System configuration for the experiment:

  • T = 2s or 60s - Total time
  • Fc = 900MHz - Carrier frequency
  • Fs = 2MHz - Sampling rate
  • Fdev = 500kHz - Deviation frequency of the chirp
  • Nstat = 100 or 600 - Number of runs

I used Matlab to write the test program. You can find it by the link:
Library was compiled using source code from the LimeSuite master branch from 05.12.19.

I would like to ask, if there way to fix this time offset for Rx channels?
Thank you in advance for your help!

Best regards,