NO(DE)-SDR v1.1.0
New Features
- Synchronous AM (SAM) demodulator — PLL-based carrier lock with coherent detection. 6-10 dB better SNR on fading AM/shortwave signals compared to envelope AM. Tracks carrier drift ±1000 Hz. New mode in the demodulation selector.
- Soft Mute — progressively reduces volume on weak signals instead of playing noise. Adjustable threshold (-80 to -10 dB). Smooth transitions (50ms). Use alongside or instead of squelch for comfortable scanning.
- FM Hi-Blend — frequency-dependent stereo width reduction for weak FM stations. Low-passes the L-R difference channel (adjustable cutoff 500Hz–8kHz). Dramatically reduces stereo hiss while preserving bass stereo imaging. Only shown in UI when receiving FM stereo.
- Rumble Filter — 4th-order Butterworth high-pass (30–150 Hz adjustable cutoff). Removes hum fundamentals and wind/blowing noise.
- Auto-Notch — LMS adaptive filter that removes stationary tones (hum harmonics, heterodynes). 128-sample decorrelation delay preserves music/bass.
- Hang-timer AGC — 15ms look-ahead, mode-specific presets (SSB 250ms/hang, CW 100ms/hang, AM 500ms, FM 1000ms). Separate from loudness compressor.
- LMS Adaptive NR — NLMS predictor replaces old Wiener spectral NR. No musical noise artifacts. Best for SSB/CW.
- DC Offset Removal — server-side adaptive IIR blocker. Dongle-level default (ON) with per-profile override. Removes center spike.
- Profile presets — 30 curated frequency profiles from ITU band plans.
- Tuning step with keyboard control — arrow keys tune by step, digit scroll wheel by position.
Bug Fixes
- ADPCM quality restoration — encoder/decoder reset on tune/mode/profile change (was causing quality halving)
- Legacy Wiener NR disabled — was running alongside new ANR causing double-processing quality loss
- BiquadFilterNode stability — all audio clamped to ±1.0 and sanitized (NaN/Infinity) before Web Audio EQ chain
- LMS ANR weight divergence — epsilon, weight clamping, and gain limits prevent silence at any strength setting
- Profile switching reliability — TCP connections awaited, generation counter prevents stale events, 300ms settle delay
- Direct sampling/biasT/offsetTuning — always explicitly sent (including 0) on profile switch
- Dongle enabled flag — disabled dongles can't start; live config updates without restart
UI Improvements
- Noise Reduction panel: Adaptive NR, AGC, Rumble Filter, Auto-Notch, Hi-Blend (WFM), Soft Mute
- All filters work on both IQ and Opus codec paths
- Admin panel: dongle enable/disable, delete receiver/profile, reorder profiles, DSP config, profile presets
- NO(DE)-SDR branding