[feat](trx-frontend-http): draw virtual channel markers on spectrum + OOB error
- Draw sky-blue dashed/solid lines on spectrum overlay for each vchan - Active virtual channel gets a solid line; inactive ones are dashed - Validate freq against SDR capture window in vchanSetChannelFreq and show a showHint error when tuning out of bandwidth Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
@@ -217,6 +217,21 @@ let _origRefreshFreqDisplay = null;
|
||||
|
||||
async function vchanSetChannelFreq(freqHz) {
|
||||
if (!vchanRigId || !vchanActiveId) return;
|
||||
// Validate against current SDR capture window.
|
||||
if (typeof lastSpectrumData !== "undefined" && lastSpectrumData &&
|
||||
lastSpectrumData.sample_rate > 0) {
|
||||
const halfSpan = Number(lastSpectrumData.sample_rate) / 2;
|
||||
const center = Number(lastSpectrumData.center_hz);
|
||||
if (Math.abs(freqHz - center) > halfSpan) {
|
||||
if (typeof showHint === "function") {
|
||||
showHint(
|
||||
`Out of SDR bandwidth (center ${(center / 1e6).toFixed(3)} MHz ±${(halfSpan / 1e3).toFixed(0)} kHz)`,
|
||||
3000
|
||||
);
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
try {
|
||||
const resp = await fetch(
|
||||
`/channels/${encodeURIComponent(vchanRigId)}/${encodeURIComponent(vchanActiveId)}/freq`,
|
||||
|
||||
Reference in New Issue
Block a user