github Stuey3D/VibeSDR app-v10.5-482
VibeSDR Android 10.5 (482) — the controls that moved and did nothing

pre-release3 hours ago

Pre-release for testing. Version stays 10.5; this is build 482.

Why your Airspy controls did nothing — found, and it was not the driver

An audit of every radio control in the app turned up the cause of your report, and it is one fault repeated seven times.

The app holds an adapter, not the WebSocket client, and calls hardware controls optionally (client?.method?.()). Any control present on the client but never copied onto the adapter is simply undefined — the call is swallowed, nothing is sent, and there is no error anywhere. airspyControl was one of those. Gain worked because it goes through a different method that happened to be on the list. That is the entire difference you observed.

Worse, when the method was missing the code fell back to the phone's own native module — so with the radio on a VibeServer, every Airspy control was being sent to the handset's idle shim.

Fixed structurally: the adapters now forward everything the client can do, automatically, instead of from a hand-maintained list. The same class of bug also had setTunerBandwidth (the IF filter), the HackRF's four controls, direct sampling, auto-DS and two others silently dead.

Two more found in the same audit that forwarding alone would not have fixed:

  • The Airspy gain mode was never put on the wire. The panel sent { mode } and the server reads mode, but the message builder copied every field except that one — so Sensitive / Linear / Free did nothing remotely even when the call arrived.
  • The SDRplay RF and DAB notches used the wrong key case and never matched.

Also

  • "Airspy AIRSPY Controls" is now just "Airspy Controls". libairspy returns "AIRSPY" for every board — it cannot distinguish a Mini from an R2 at all, and my previous fix assumed a name the library never returns. It is deliberately not named "Mini" from its sample rates: that is guessing at hardware from an unrelated reading, and a future board would be named wrongly and confidently. The rates are published in the radio's capabilities, where you can see them.
  • Server bookmarks in the app: a new "ON THIS SERVER" button in the bookmarks card lists the stations a receiver has learned by RDS or had saved by its owner, each marked LEARNT or SAVED. Previously they were reachable only by typing a name into the search box, which is no use if you do not already know what is there.

Please retest

Gain mode, the three stages, both AGCs, bias-T and packing — both with the Airspy plugged into the phone and with it shared from a VibeServer. If anything still does nothing, say which, and whether the radio was local or on a server: those are now genuinely different code paths and knowing which narrows it immediately.

If the app still crashes, a logcat at the moment it goes would help enormously — that one I have not reproduced and I would rather not guess.

Don't miss a new VibeSDR release

NewReleases is sending notifications on new releases.