github gbozo/no-sdr v2.1.0
v2.1.0 — Local RTL-SDR hardware settings fix

latest releases: v2.10.5, v2.10.4, v2.10.3...
4 months ago

Bug Fix: Local RTL-SDR hardware configuration

Critical fix: RtlSdrSource (native USB dongle via librtlsdr) never applied hardware settings — directSampling, gain, biasT, AGC, offsetTuning, and PPM were silently ignored on both startup and profile switch.

What was broken

  • RtlSdrSource methods had incompatible signatures (int/bool instead of uint32) and couldn't satisfy CommandableSource
  • createSource() for local type never called applyDongleSettings() after Open()
  • Profile switches via SwitchProfile() silently skipped hardware commands for local dongles

Changes

  • Aligned all RtlSdrSource methods to match CommandableSource interface (uint32 params with internal conversion)
  • Added missing SetOffsetTuning() and SetFrequencyCorrection() methods
  • Generalized applyDongleSettings() to accept any CommandableSource (was *RtlTcpSource only)
  • Added applyDongleSettings() call for local source after Open()
  • Added compile-time interface check: _ CommandableSource = (*RtlSdrSource)(nil)

Also included

  • Parallel IQ extraction for multi-client scenarios (goroutine per client)
  • Admin API: expose demoMode, fftHistoryFftSize, fftHistoryCompression, adminPassword fields
  • Fix: preserve existing profiles when PUT updates dongle-level fields only

Don't miss a new no-sdr release

NewReleases is sending notifications on new releases.