fix(motor-antenna): honor the configured tunable range for the Ultrabeam
The follow logic skips out-of-range frequencies only when it knows BOTH edges of the antenna's range. The Ultrabeam path took those edges from the controller's status frame, but an RCU-01 behind an RS232-to-Ethernet bridge answers with the short frame that omits FreqMax → the guard saw FreqMax==0 and disabled itself → OpsLog forwarded every rig frequency, so 80 m (un-tunable) reached the controller, which clamped the elements down to its lowest band (~30 m). ubAdapter now carries the operator-configured FreqMin/FreqMax from Settings → Antenna (like steppirAdapter already did) and uses them as a hard floor/ceiling, falling back to the controller-reported bound only when one is left unset. This guarantees both bounds are present so the guard actually engages. The Tunable range editor in the Antenna panel, previously SteppIR-only, is now shown for the Ultrabeam too, with a generic bilingual hint.
This commit is contained in:
@@ -3012,10 +3012,10 @@ export function SettingsModal({ onClose, onSaved, initialSection, onMainPaneChan
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
{isSteppir && (
|
||||
{(isSteppir || ultrabeam.type === 'ultrabeam') && (
|
||||
<div className="border-t border-border/60 pt-3 space-y-1">
|
||||
<div className="flex items-center gap-2 flex-wrap">
|
||||
<Label className="text-sm">{t('hw.steppirRange')}</Label>
|
||||
<Label className="text-sm">{t('hw.motorRange')}</Label>
|
||||
<input type="number" min={1} max={60} value={ultrabeam.freq_min_mhz}
|
||||
onChange={(e) => setUltrabeam((s) => ({ ...s, freq_min_mhz: parseInt(e.target.value, 10) || 0 }))}
|
||||
className="h-8 w-16 rounded-md border border-input bg-background px-2 text-sm" />
|
||||
@@ -3025,7 +3025,7 @@ export function SettingsModal({ onClose, onSaved, initialSection, onMainPaneChan
|
||||
className="h-8 w-16 rounded-md border border-input bg-background px-2 text-sm" />
|
||||
<span className="text-xs text-muted-foreground">MHz</span>
|
||||
</div>
|
||||
<p className="text-xs text-muted-foreground">{t('hw.steppirRangeHint')}</p>
|
||||
<p className="text-xs text-muted-foreground">{t('hw.motorRangeHint')}</p>
|
||||
</div>
|
||||
)}
|
||||
<div className="border-t border-border/60 pt-3 space-y-1">
|
||||
|
||||
Reference in New Issue
Block a user