Pre-release for testing. Version stays 10.5; this is build 480.
Airspy R2 / Mini — the fixes from the first test
Thank you for the report. Three of the four faults were one bug, and your own workaround is what proved it.
Frequency, gain and bias-T were all being written to the radio before the stream was started, so the device never took any of it. That is exactly why "change the frequency and back" fixed the audio: it was simply the first write that landed after the stream was up. Every other Airspy client does it the other way round — SDR++ and gr-osmosdr start the transfer first, then set frequency and gain. Now the settings live in the driver and are re-stated onto the live stream from one place, so nothing can be half-applied.
- Gain controls work — presets and the manual stages
- Frequency is right on reconnect — no more "tuned to 100.0" audio under a correct readout
- Bias-T works
- Sample rate changes.
airspy_set_sampleratereconfigures the USB transfer geometry and the library refuses it while a transfer is running, so the call failed silently and the radio stayed where it opened — which made the picker look like the culprit. It now stops, sets the rate, restarts, and re-applies everything.
Three gain modes, as you asked
Sensitive / Linear / Free, in SDR++'s own order and words, matched to its source clause by clause:
- Sensitive and Linear are one slider — the main gain control — and both force the two stage AGCs off, because a curve sets all three stages and a running AGC would overwrite two of them
- Free gives you LNA / Mixer / VGA, with the radio's own AGC available on the LNA and the mixer; the VGA is always manual because it has none
- Each preset mode remembers its own gain position, as SDR++ does — the two curves reach a given signal at different points
This also removed a real ambiguity: previously a curve switch sat next to three always-visible stage sliders, so moving a stage silently left preset mode with nothing on screen saying so. The stages and AGC switches now appear only in Free.
The web client gets the same panel. Serving the Airspy and opening it in a browser previously drew dongle controls — RTL gain, PPM, digital AGC and a direct-sampling switch, on a radio that has none of those. The server also now publishes the radio's own sample rates, so a Mini is offered 3 / 6 MS/s rather than an R2's 2.5 / 10.
Other fixes in this build
- VibeAGC: a gain that fails is asked about less each time it fails, instead of climbing straight back into it. Measured on FM — one station settles 8 dB lower with 6 dB better SNR, another goes from 60% to 81% RDS.
- An RTL-SDR Blog V4 is now told it does not need direct sampling on Android too; the model name never reached the engine there.
- Five server settings that were saved and displayed but never sent to the engine, including DAB multi-station text and start-on-boot.
- First-run tutorial in the web client, with the buttons drawn inline.