I am trying to drive two LimeSDR-Mini v2.2 devices synchronously, with the same external clock.
Both sdr boards have R63 removed and R66 soldered.
I am working on 2 scenarios for this:
1. External clock source provided to both SDRs - the clock source is a third, none hardware modified LimeSDR-Mini v2.2, whose 40MHz clock is fed to a splitter and then passed to the synced devices. With oscilloscope we measured the input to the splitter to be ~4V sine wave, and the output ~2V sine wave.
2. One, none hardware modified, SDR provides clock to the second - no splitter in this case
To verify the behavior I use the following GnuRadio 3.8 schematics:
I am not much into the math behind the schematics, but it should be calculating the correlation between the input streams. The correlation peak indicates how many samples is the offset between the two streams. It is proven to work with two HackRF devices, both using external clock (the left graphics, with the peak). Unfortunately it is not working with LimeSDR-Mini v.2.2 (the right graphics).
Could you give some hints, where or what could be wrong with my Lime devices?
I looked at this discussion, https://discourse.myriadrf.org/t/synchronize-two-limesdr, which seemed related to my problem. It was addressing LimeSDR-Mini/USB version1, though. According to it, there should be some update in the FPGA code. But I don’t know if this update is present in the LimeSDR-Mini v2.2. Also I am not sure how to get the versions of the firmware and FPGA code in my devices.
CPU Intel(R) Core™ i7-9850H CPU @ 2.60GHz
LimeSuiteGUI - manually built, master branch, Version: 22.09.1-g38efe960
- LimeQickTest fails for the boards with the R63->R66 modification. Before the hardware modification it was passing. The error is in the VCTCXO test.
[ TESTING STARTED ] ->Start time: Thu Apr 6 08:41:00 2023 ->LimeSuite version: 22.09.1-g38efe960 Warning: Multiple devices detected, connecting to the first device ->Device: LimeSDR Mini, media=USB 3.0, module=FT601, addr=24607:1027, serial=1D90F63D381ACC, HW=5, GW=2.1 Serial Number: 1D90F63D381ACC Chip temperature: 29 C [ Clock Network Test ] ->REF clock test Test results: 22533; 25315; 28050 - PASSED ->VCTCXO test Results : 6711107 (min); 6711108 (max) - FAILED FAILED ->Clock Network Test FAILED [ FPGA EEPROM Test ] ->Read EEPROM FPGA EEPROM not supported in v2 ->FPGA EEPROM Test PASSED [ LMS7002M Test ] ->Perform Registers Test ->External Reset line test Reg 0x20: Write value 0xFFFD, Read value 0xFFFD Reg 0x20: value after reset 0x0FFFF ->LMS7002M Test PASSED [ RF Loopback Test ] ->Configure LMS ->Run Tests (TX_2 -> LNA_W): CH0 (SXR=1000.0MHz, SXT=1005.0MHz): Result:(-28.9 dBFS, 5.00 MHz) - PASSED ->Run Tests (TX_1 -> LNA_H): CH0 (SXR=2100.0MHz, SXT=2105.0MHz): Result:(-22.4 dBFS, 5.00 MHz) - PASSED ->RF Loopback Test PASSED => Board tests FAILED <= Elapsed time: 1.57 seconds
- I am unable to configure external reference clock through LimeUtil. I get the same message in LimeSuiteGUI->Modules->ADF4002->Calculation of R N
:$ LimeUtil --refclk="module=FT601,serial=1D90F5FD139436" --fref=40000000 --fvco=40000000 Enable external reference clock on device Setting fRef: 40MHz, fVco: 40MHz... Command not supported Transaction failed!
- I am unable to update the devices:
:$ LimeUtil --update Connected to [LimeSDR Mini [USB 3.0] 1D90F63D381ACC] ProgramWrite length should be > 0 Programming update failed!