Skip to content

v0.4.0 — Snap-to-peak auto-tuner

Choose a tag to compare

@clorth0 clorth0 released this 14 Jun 16:53
· 50 commits to main since this release

Aetherscope v0.4.0 adds a one-click snap-to-peak auto-tuner for radio listening.

Snap-to-peak auto-tuner

  • New "Snap to signal" button in the Radio controls fine-centers the receiver on
    the strongest carrier near your tuned frequency.
  • Pure DSP (backend/tuning.py find_peak_offset): DC/LO-spike removal,
    fftshifted periodogram, strongest bin within a guarded window, gated by a
    min-SNR-above-median floor so a dead band leaves the tuning untouched.
  • Search is intentionally narrow (FM 50 kHz, AM/NFM 15 kHz): it fine-centers the
    station you are on rather than seeking nearby ones. Live FM testing showed a
    wide window can lock onto a neighboring station's modulation skirt between
    channels, so the window stays well inside the channel spacing.
  • The now-playing frequency readout now shows kHz precision so a small snap is
    visible.
  • Five hardware-free TDD tests (tests/test_tuning.py); 7 suites / 30 tests
    total, CI green.

Fixes

  • Device pill: the manual "click to re-probe" no longer probes a device that a
    running job owns, which had been false-flipping the pill to "No HackRF". It now
    re-broadcasts the current status while busy and only probes when idle.

Everything from v0.3.0 carries forward (ADS-B colored aircraft + fading trails,
docs site, SA tools, NBFM + scanner, IQ replay, telemetry/diagnostics, vendored
deps + CSP, CI, Linux Docker, calibration). Install and run are unchanged; see
the README.

Seek up/down (band browsing) is the documented next extension; see
docs/superpowers/specs/2026-06-14-auto-tuner-snap-to-peak-design.md.