feat: configurable SteppIR tunable range — skip follow/inhibit off-band

A SteppIR only covers part of the spectrum (a standard one is 20 m–6 m) but
can't report its own range, so the follow loop's existing out-of-range guard
(FreqMin/FreqMax) never engaged for it. Tuning the rig to a band the antenna
can't reach (e.g. 30 m) made the loop keep trying — the immediate cause of the
stuck TX interlock addressed in the previous commit.

Add a Tunable range (MHz) setting to the Antenna panel, wired into the SteppIR
adapter's Status().FreqMin/FreqMax so the follow loop skips out-of-range
frequencies entirely: no tune command, no TX inhibit. Defaults to 13–54 MHz
(20 m–6 m, the common model) when unset; widen the low edge for a 40 m-equipped
SteppIR. Ultrabeam is unaffected (it reports its own per-band coverage).

Keeps the last-commanded-freq deadband from the previous commit as a universal
safety net for any flaky-status case within the valid range.
This commit is contained in:
2026-07-24 16:05:36 +02:00
parent b83d55cc32
commit 48345a22fc
5 changed files with 67 additions and 10 deletions
+4
View File
@@ -2960,6 +2960,8 @@ export namespace main {
follow: boolean;
step_khz: number;
tx_inhibit: boolean;
freq_min_mhz: number;
freq_max_mhz: number;
static createFrom(source: any = {}) {
return new UltrabeamSettings(source);
@@ -2977,6 +2979,8 @@ export namespace main {
this.follow = source["follow"];
this.step_khz = source["step_khz"];
this.tx_inhibit = source["tx_inhibit"];
this.freq_min_mhz = source["freq_min_mhz"];
this.freq_max_mhz = source["freq_max_mhz"];
}
}
export class UltrabeamStatusInfo {