Hi all,
Thanks for the responses. Ultimately, we won't be able to share a clock source directly, and I don't have the right cables right now to link them for troubleshooting. Even when I try to use the RF loopback modes though, I do not see a correlation peak. Firmware-based loopback works as expected. I've been trying to model a frequency offset with the Channel Model block, and compensate with the Costas loop block with a little success. But actually doing it on the radios does not work.
The Costas loop handles frequency offsets up to 0.05 in simulations with an otherwise ideal channel. The chip rate is 1.25Mchip/s, so that's an offset of about 63kHz. The BladeRF's clock is 38.4MHz accurate to 1 ppm or 38.4Hz. Multiplied up to our carrier frequency of 910MHz, that's an expected accuracy of under 1kHz, so it's reasonable to expect that the Costas loop would take care of any offset right?
Using the conjugate of the samples doesn't seem to make difference. That would make sense to me if I was trying to do the correlation as frequency domain multiplication by the conjugate, but I'm not (the FIR filter method has produced much more consistent results in simulations for us so far). Ideally, the samples would be completely real since it's BPSK, and we'd want to apply compensation in order to achieve roughly that, right?
T'hanks,
Jonathan