LimeSDR mini: Parameters Explanation

Recently I’ve tried to run dualRXTX.cpp from example code, specifically tried to modify different parameters to see what would happen.

However as I looked through how the code are written, I got sometimes confused.
For example, following is part of dualRXTX.cpp:


Here we see several functions. LMS_SetLOFrequency, LMS_SetSampleRate, LMS_SetNormalizeGain.
We could easily know they must be related to frequency, sample rate and gain. But this is what I’m curious about. I want to figure out the best sample rate for my research.
To this goal, I have to understand how they affect each other, moreover, to know how parameters work in the functions.
I 'm wondering if there’s any material for the functions I could read or simply just explanation how these three parameters( frequency, sample rate and gain) affect each other.

My goal is to find out the best sample rate

If the question is “what is the best sample rate”, then I think you are looking at the wrong things to make the decision. Sample rate is usually determined by the needs of the processing code, not the hardware. It is a balance between having enough data to recover the signal you want and having too do too many computations for the signal processing hardware to support. Once you have a set of possible sampling rates, then you look at what the hardware can do to select the best rate of that set. Thus, the only thing of interest in the hardware functions are things like “what is the lowest sample rate it can support?” “What is the highest sample rate it can support?” “Can it support any sample rate, or only certain sample rates (e.g., does it only support sample rates that are integer multiples of N?”

1 Like

For my app best sample rate is one with lowest noise from A/D converter but at same time enough bandwith for signals I’m processing. For CW/SSB signals I’m using 192KS/s as sample rate above 30MHz but for HF bands sample rate must go up to 1.5MS/s for full coverage (LimeSDR limitation).

1 Like