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

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

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

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

Loading…
Cancel
Save

Powered by TurnKey Linux.