correct some problems reported for --cal not writing the modem tuning partition; correct some issues with Rx tuning not properly applying during calibration procedures;

pull/39/head
Bryan Biedenkapp 3 years ago
parent 4559a9c273
commit 31f6b072fb

@ -135,6 +135,8 @@ int HostCal::run(int argc, char **argv)
return 1;
}
m_isConnected = true;
// open terminal console
ret = m_console.open();
if (!ret) {
@ -278,6 +280,8 @@ int HostCal::run(int argc, char **argv)
m_rxAdjustedFreq = m_rxFrequency + m_modem->m_rxTuning;
writeRFParams();
Thread::sleep(2);
writeConfig();
}
}
break;
@ -298,6 +302,8 @@ int HostCal::run(int argc, char **argv)
m_txAdjustedFreq = m_txFrequency + m_modem->m_txTuning;
writeRFParams();
Thread::sleep(2);
writeConfig();
}
}
break;

@ -127,6 +127,7 @@ HostSetup::HostSetup(const std::string& confFile) :
m_fec(),
m_transmit(false),
m_duplex(true),
m_startupDuplex(true),
m_dmrEnabled(false),
m_dmrRx1K(false),
m_p25Enabled(false),
@ -207,6 +208,7 @@ int HostSetup::run(int argc, char** argv)
yaml::Node systemConf = m_conf["system"];
yaml::Node modemConfig = systemConf["modem"];
m_duplex = systemConf["duplex"].as<bool>(true);
m_startupDuplex = m_duplex;
// try to load bandplan identity table
std::string idenLookupFile = systemConf["iden_table"]["file"].as<std::string>();
@ -596,7 +598,7 @@ bool HostSetup::calculateRxTxFreq(bool consoleDisplay)
m_channelNo = 4095U;
}
if (m_duplex) {
if (m_startupDuplex) {
if (entry.txOffsetMhz() == 0U) {
if (consoleDisplay) {
g_logDisplayLevel = 1U;
@ -619,6 +621,12 @@ bool HostSetup::calculateRxTxFreq(bool consoleDisplay)
m_txFrequency = m_rxFrequency;
}
if (m_isHotspot) {
// apply the frequency tuning offsets
m_rxAdjustedFreq = m_rxFrequency + m_modem->m_rxTuning;
m_txAdjustedFreq = m_txFrequency + m_modem->m_txTuning;
}
return true;
}

@ -130,6 +130,7 @@ protected:
bool m_transmit;
bool m_duplex;
bool m_startupDuplex;
bool m_dmrEnabled;
bool m_dmrRx1K;

@ -256,24 +256,30 @@ private:
m_rxFreqAdjLabel.setGeometry(FPoint(32, 10), FSize(20, 1));
m_rxTuning.setGeometry(FPoint(52, 10), FSize(10, 1));
m_rxTuning.setRange(-1000, 1000);
m_rxTuning.setRange(-100000, 100000);
m_rxTuning.setValue(m_setup->m_modem->m_rxTuning);
m_rxTuning.setShadow(false);
m_rxTuning.addCallback("changed", [&]() {
m_setup->m_modem->m_rxTuning = m_rxTuning.getValue();
Thread::sleep(2);
m_setup->calculateRxTxFreq();
m_setup->writeRFParams();
Thread::sleep(2);
m_setup->writeConfig();
});
m_txFreqAdjLabel.setGeometry(FPoint(32, 12), FSize(20, 1));
m_txTuning.setGeometry(FPoint(52, 12), FSize(10, 1));
m_txTuning.setRange(-1000, 1000);
m_txTuning.setRange(-100000, 100000);
m_txTuning.setValue(m_setup->m_modem->m_txTuning);
m_txTuning.setShadow(false);
m_txTuning.addCallback("changed", [&]() {
m_setup->m_modem->m_txTuning = m_txTuning.getValue();
Thread::sleep(2);
m_setup->calculateRxTxFreq();
m_setup->writeRFParams();
Thread::sleep(2);
m_setup->writeConfig();
});
}

Loading…
Cancel
Save

Powered by TurnKey Linux.