mirror of
https://git.vladimir.cc/vladimir/ewsdr.git
synced 2026-08-25 17:27:32 +00:00
Remove XVTR RF checkbox; fix XVTR Enable bit to match Thetis
XVTR RF (xvtr_rf in Thetis) is dead code — GetXVTRRF() is never called. Remove the field, UI column, save/load from TXvtrEntry. UseDDCIn is now always True when in XVTR mode (previous default behaviour, XVTRRF=False). Byte 1400 bit 0 (XVTR Enable / VHF T/R relay output) now follows Thetis: - XVTR mode: set only when DisablePA=True (external T/R relay needed) - HF mode: set when Alex.EnableXvtrHf is checked (Antenna tab) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+15
-8
@@ -145,9 +145,8 @@ type
|
||||
FAlexConfig: TAlexSettings; // per-band antenna + routing config
|
||||
FStepAtten: Byte; // ADC0 step attenuator 0-31 dB
|
||||
// ---- XVTR (Transverter) state ----
|
||||
// FXvtrEnable — устанавливает bit 0 байта 1400 HP-пакета: включает выход
|
||||
// XVTR на трансивере (управляющий пин/реле). Обычно True, пока активный
|
||||
// диапазон — трансвертер.
|
||||
// FXvtrEnable — True когда активен XVTR-диапазон. Используется как
|
||||
// XvtrActive в CalcAlex0 и для управления byte 1400 bit 0.
|
||||
FXvtrEnable: Boolean;
|
||||
// FXvtrRxAntOverride — если 1..3, использовать эту антенну вместо
|
||||
// Alex.RxAnt[band] (per-XVTR RX antenna). 0 = не переопределять.
|
||||
@@ -1417,12 +1416,20 @@ begin
|
||||
Buf[1435] := Alex0 and $FF;
|
||||
end;
|
||||
|
||||
// XVTR enable bit (byte 1400 bit 0)
|
||||
// openHPSDR Ethernet Protocol v4.3: byte 1400 — Transverter/audio enable.
|
||||
// bit 0 = XVTR enable, bit 1 = Audio Codec enable (на платах с поддержкой).
|
||||
// Audio codec бит оставляем 0 — мы IQ-mic не используем.
|
||||
// XVTR enable bit (byte 1400 bit 0) — управляет выходом VHF T/R relay платы.
|
||||
// Логика как в Thetis:
|
||||
// в XVTR-режиме: бит = DisablePA (внешний T/R relay нужен только если PA подавлен)
|
||||
// в HF-режиме: бит = Alex.EnableXvtrHf (галочка "Enable XVTR HF" в Antenna tab)
|
||||
if FXvtrEnable then
|
||||
Buf[1400] := Buf[1400] or $01;
|
||||
begin
|
||||
if FXvtrDisablePA then
|
||||
Buf[1400] := Buf[1400] or $01;
|
||||
end
|
||||
else
|
||||
begin
|
||||
if FAlexConfig.EnableXvtrHf then
|
||||
Buf[1400] := Buf[1400] or $01;
|
||||
end;
|
||||
|
||||
// Step attenuators ADC0/ADC1 (bytes 1443/1442)
|
||||
// 0 dB = 0, max 31 dB
|
||||
|
||||
Reference in New Issue
Block a user