Strf and the LimeSDR mini V2.0

Running the LimeSDR mini V2.0 for some time now for strf observations I notice I have some / a lot of observations on the result of (Freq + SR) or (Freq - SR) . Tried to add the --bandwidth option to rx_sdr with no result, it’s only implemented in the fm receiver.

So I tried some change to the dakrstar007 fork which supports the -B option I ran into an error message running make:

home/hacker4/rx_tools/src/convenience/convenience.c:496:13: error: too many arguments to function ‘SoapySDRDevice_setupStream’ 496 | if (SoapySDRDevice_setupStream(dev, streamOut, SOAPY_SDR_RX, format, channels, nchannels, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /home/hacker4/rx_tools/src/convenience/convenience.h:33, from /home/hacker4/rx_tools/src/convenience/convenience.c:22: /usr/include/SoapySDR/Device.h:306:31: note: declared here 306 | SOAPY_SDR_API SoapySDRStream *SoapySDRDevice_setupStream(SoapySDRDevice *device, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ make[2]: *** [CMakeFiles/common.dir/build.make:76: CMakeFiles/common.dir/src/convenience/convenience.c.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:89: CMakeFiles/common.dir/all] Error 2 make: *** [Makefile:136: all] Error 2

I ran these errors through the AI side of the internet:

Years ago, SoapySDR changed its C API function signature for SoapySDRDevice_setupStream: [1]

  • Old API: It used to accept an allocated stream pointer variable as an input argument to modify it.

  • Modern API: It now natively returns the stream pointer directly and takes one less argument. [1, 2]

So after using the suggested fix:

replacing lines 496 - 500 with:

if (SoapySDRDevice_setupStream(dev, streamOut, SOAPY_SDR_RX, format, channels, nchannels, &stream_args) != 0) {
fprintf(stderr, “SoapySDRDevice_setupStream failed: %s\n”, SoapySDRDevice_lastError());
return -1;
}

make finishes , make install and sudo ldconfig and the -B option is accepted.

Tried a dry run at 30.72 MSPS with -B set for 5MHz

Output in rstrf shows nicely:

So now I am going to let this run for the night with 22 MHZ bandwidth and check tomorrow if I have less images from outside the band.

2 Likes

Very cool. I have the original mini and have thought of using it for strf now and then.

1 Like

2245 center, 30.72 MSPS sample rate and 22MHz bandwidth. Looks like this is working. The lora signals at the bottom are much weaker as without the -B option enabled.

My lime sdr strf grabber is available over here:

You need rx_tools from darkstar007 to get the -B option.