LimeSDR Mini: Readback of configurtion

Hello,

I used the following configurtion:

config.channel[0].rx.enabled = true;
config.channel[0].rx.gain[eGainTypes::LNA] = 30;
config.channel[0].rx.centerFrequency = 530e6;
config.channel[0].rx.sampleRate = 10e6;
config.channel[0].rx.oversample = 2;
config.channel[0].rx.lpf = 12e6
config.channel[0].rx.path = 3;

Status = device->Configure(config, 0);
//Status = OpStatus::Success

Then I tried to read back the configuration:

double BandWidth= device->GetLowPassFilter(0, TRXDir::Rx, 0));
uint32_t Antenna = device->GetAntenna(0, TRXDir::Rx, 0);
//BandWidth = 0
//Antenna = 1

Can you please explain why I got wrong values for BandWidth, Antenna ?

Thank you,

Zvi

Hello,

After:

Status = device->Configure(config, 0);

I called:

Status = device->SetLowPassFilter(0, TRXDir::Rx, 0, BandWidth);
if (Status != OpStatus::Success)
{
    printf("SetLowPassFilter failed\n");
    return -1;
}

double BandWidth= device->GetLowPassFilter(0, TRXDir::Rx, 0));
uint32_t Antenna = device->GetAntenna(0, TRXDir::Rx, 0);
//BandWidth = 12000000
//Antenna = 3

For some reason, calling SetLowPassFilter caused the right readback.

Does it make sense ?

Thank you,

Zvi

Hi, the low pass filter is analog, and it’s actual exact value cannot be readback, so the returned value is the last cached value that has been configured.

1 Like

Hi,

Thank you very much !

Best regards,

Zvi