diff --git a/DXLabSuiteCommanderTransceiver.cpp b/DXLabSuiteCommanderTransceiver.cpp index 85736eae2..2754bd55a 100644 --- a/DXLabSuiteCommanderTransceiver.cpp +++ b/DXLabSuiteCommanderTransceiver.cpp @@ -206,23 +206,26 @@ void DXLabSuiteCommanderTransceiver::poll () throw error {tr ("DX Lab Suite Commander didn't respond correctly polling frequency")}; } - reply = command_with_reply ("CmdSendTXFreq", quiet); - if (0 == reply.indexOf ("') + 1).replace (",", "").replace (".", ""); - if ("000" != text) + reply = command_with_reply ("CmdSendTXFreq", quiet); + if (0 == reply.indexOf ("') + 1).replace (",", "").replace (".", ""); + if ("000" != text) + { + update_other_frequency (text.toUInt ()); + } } - } - else - { + else + { #if WSJT_TRACE_CAT - qDebug () << "DXLabSuiteCommanderTransceiver::poll: get tx frequency unexpected response"; + qDebug () << "DXLabSuiteCommanderTransceiver::poll: get tx frequency unexpected response"; #endif - throw error {tr ("DX Lab Suite Commander didn't respond correctly polling TX frequency")}; + throw error {tr ("DX Lab Suite Commander didn't respond correctly polling TX frequency")}; + } } reply = command_with_reply ("CmdSendSplit", quiet); diff --git a/HamlibTransceiver.cpp b/HamlibTransceiver.cpp index 08fc0d9bf..778107bfc 100644 --- a/HamlibTransceiver.cpp +++ b/HamlibTransceiver.cpp @@ -667,9 +667,14 @@ void HamlibTransceiver::poll () update_rx_frequency (f); - if (rig_->caps->targetable_vfo & (RIG_TARGETABLE_FREQ | RIG_TARGETABLE_PURE)) + if (state ().split () && (rig_->caps->targetable_vfo & (RIG_TARGETABLE_FREQ | RIG_TARGETABLE_PURE))) { - // we can only probe current VFO unless rig supports reading the other one directly + // only read "other" VFO if in split, this allows rigs like + // FlexRadio to work in Kenwood TS-2000 mode despite them + // not having a FB; command + + // we can only probe current VFO unless rig supports reading + // the other one directly because we can't glitch the Rx #if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS qDebug () << "HamlibTransceiver::poll rig_get_freq other VFO"; #endif