Skip to content

Band Stack recall omits vfo: on TCI for a fixed subset of bands (160/80/60/17/10m) — TCI clients left on stale frequency #2824

Description

@nigelfenton

Summary

Recalling a band via the Band Stack panel tunes the radio correctly but, for a deterministic fixed subset of bands — 160, 80, 60, 17, 10 m, AetherSDR emits modulation:, rx_filter_band:, rx_volume:, lock: on the TCI server but no vfo:0,0,<freq>;. The other bands (40, 30, 20, 15, 12, 6 m) emit vfo: normally. The radio itself moves to the right frequency in all cases; only the TCI frequency announcement is missing. Any TCI client that follows frequency (amplifiers, WSJT-X, loggers) is therefore stranded on the previous band's frequency after a recall to an affected band.

Reproduction

  1. Connect a radio in AetherSDR (TCI server bound, default port 40001).
  2. Attach any TCI client that logs raw frames (we used a standalone passive WebSocket monitor — no commands sent to the server).
  3. Click bands on the Band Stack panel in order 160 → 6 m, ~2 s apart.
  4. Observe the raw TCI stream per band.

Result — two full independent sweeps, identical outcome; 10 m re-verified 4×:

Band vfo: emitted? Band vfo: emitted?
160 m ❌ no 17 m ❌ no
80 m ❌ no 15 m ✅ yes
60 m ❌ no 12 m ✅ yes
40 m ✅ yes 10 m ❌ no
30 m ✅ yes 6 m ✅ yes
20 m ✅ yes

Silent set {160, 80, 60, 17, 10} was identical across both sweeps and rechecks — this is deterministic, not a race or intermittent.

Raw TCI excerpts

Affected band — 10 m recall (no vfo:):

rx_volume:0,92
lock:0,false
rx_filter_band:0,100,2800

Affected band — 160 m recall (no vfo:):

rx_volume:0,92
lock:0,false
rx_filter_band:0,-2800,-100

Working band — 12 m recall (vfo: present):

modulation:0,digu
rx_filter_band:0,0,3000
rx_volume:0,60
lock:0,false
vfo:0,0,24924900
rx_filter_band:0,0,3000

The only structural difference is the absent vfo:0,0,<freq>; token; all other tokens are present and well-formed. A manual VFO/band-display tune from within an affected band emits vfo: normally, confirming the gap is specific to the Band Stack recall path, not the band or frequency.

Impact

Any frequency-following TCI client (e.g. an RF2K-S amplifier, WSJT-X, a logger) remains on the previous band's frequency after a Band Stack recall to 160/80/60/17/10 m, until a subsequent manual tune. Observed live: an RF2K-S froze on the prior band's displayed frequency through each affected recall.

Notes

  • Mechanism not investigated from source — flagging the reproducible behaviour for maintainer triage rather than guessing what distinguishes the two band sets.
  • Independent/unrelated: the amp's RF-KIT ATU "out-of-filter" indicator appeared on 30/12/10 m, i.e. on both vfo:-emitting and vfo:-silent bands — that is amp-side filter coverage and is orthogonal to this TCI issue; mentioned only to pre-empt conflation.
  • Observation was fully passive (no TCI commands sent), so unrelated to Deterministic 0xc0000005 crash on TCI tune on/off (TransmitModel::stopTune -> commandReady) #2814.

Environment

  • AetherSDR 26.5.2.1-G0JKN (local fork build, feature/version-suffix, commit 2597cd8)
  • Windows 11, Qt 6.10.3
  • FlexRadio 6700, TCI server port 40001

73, Nigel G0JKN & Claude

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions