feat(kpa): the band-follow is asked for, not assumed

Telling somebody's amplifier where to be is a write to their station, and
it now has a switch — the SAME switch an Acom uses. 'Keep the amplifier on
the radio's band' is one idea to an operator; that it needs a second
serial port and a rig emulator on one amplifier and a single ^BN on
another is our business, not a reason for two checkboxes.

On by default for a KPA, because an amplifier left on the wrong band is
the worse outcome of the two, and the operator who has wired it straight
to the radio turns it off once. The hint says exactly that case, since it
is the only one where a second voice telling the amplifier where to be is
unwelcome.
This commit is contained in:
2026-08-26 18:07:35 +02:00
parent de95a437bb
commit 3013a2ba08
3 changed files with 21 additions and 3 deletions
+6 -1
View File
@@ -18285,7 +18285,12 @@ func (a *App) feedAmpBandFollow(s cat.RigState) {
// neither a second serial port nor a pretend rig. Sent from a goroutine
// because this runs on the CAT state-change path, and nothing about the
// rig should wait on an amplifier's link.
if inst.kpa != nil && s.Band != "" {
// Asked for, like every other write to somebody's station. The option is
// the same one an Acom uses — "keep the amplifier on the radio's band" is
// one idea to an operator, whatever it takes underneath — and it is off
// for the operator who has wired the amplifier straight to the rig and
// does not want a second voice telling it where to be.
if inst.kpa != nil && inst.cfg.FreqOut && s.Band != "" {
k, band := inst.kpa, s.Band
go func() { _ = k.SetBand(band) }()
}