Merge branch 'master' into various-fixes

half-duplex
Phil Taylor 2022-11-26 19:02:11 +00:00
commit 7138ef69ea
5 zmienionych plików z 107 dodań i 114 usunięć

Wyświetl plik

@ -78,7 +78,7 @@ install wfview on suse 15.3 & up, sles 15.x or tumbleweed; this was done on a cl
we need to add packages to be able to build the stuff. we need to add packages to be able to build the stuff.
- sudo zypper in --type pattern devel_basis - sudo zypper in --type pattern devel_basis
- sudo zypper in libQt5Widgets-devel libqt5-qtbase-common-devel libqt5-qtserialport-devel libQt5SerialPort5 qcustomplot-devel libqcustomplot2 libQt5PrintSupport-devel libqt5-qtmultimedia-devel lv2-devel libopus-devel eigen3-devel libQt5Xml-devel - sudo zypper in libQt5Widgets-devel libqt5-qtbase-common-devel libqt5-qtserialport-devel libQt5SerialPort5 qcustomplot-devel libqcustomplot2 libQt5PrintSupport-devel libqt5-qtmultimedia-devel lv2-devel libopus-devel eigen3-devel libQt5Xml-devel portaudio-devel rtaudio-devel
optional (mainly for development specifics): get and install qt5: optional (mainly for development specifics): get and install qt5:

Wyświetl plik

@ -3566,6 +3566,27 @@ void rigCommander::determineRigCaps()
createMode(modePSK_R, 0x13, "PSK-R")}); createMode(modePSK_R, 0x13, "PSK-R")});
rigCaps.transceiveCommand = QByteArrayLiteral("\x1a\x05\x00\x95"); rigCaps.transceiveCommand = QByteArrayLiteral("\x1a\x05\x00\x95");
break; break;
case model703:
rigCaps.modelName = QString("IC-703");
rigCaps.rigctlModel = 3055;
rigCaps.hasSpectrum = false;
rigCaps.inputs.clear();
rigCaps.hasLan = false;
rigCaps.hasEthernet = false;
rigCaps.hasWiFi = false;
rigCaps.hasFDcomms = false;
rigCaps.hasATU = true;
rigCaps.hasPTTCommand = false;
rigCaps.useRTSforPTT = true;
rigCaps.hasDataModes = false;
rigCaps.attenuators.push_back('\x20');
rigCaps.bands = standardHF;
rigCaps.bands.insert(rigCaps.bands.end(), standardVU.begin(), standardVU.end());
rigCaps.bands.push_back(bandGen);
rigCaps.modes = commonModes;
rigCaps.modes.insert(rigCaps.modes.end(), createMode(modeWFM, 0x06, "WFM"));
rigCaps.transceiveCommand = QByteArrayLiteral("\x1a\x05\x00\x00");
break;
case model706: case model706:
rigCaps.modelName = QString("IC-706"); rigCaps.modelName = QString("IC-706");
rigCaps.rigctlModel = 3009; rigCaps.rigctlModel = 3009;
@ -3626,7 +3647,48 @@ void rigCommander::determineRigCaps()
rigCaps.hasPTTCommand = false; rigCaps.hasPTTCommand = false;
rigCaps.useRTSforPTT = true; rigCaps.useRTSforPTT = true;
rigCaps.hasDataModes = false; rigCaps.hasDataModes = false;
rigCaps.hasIFShift = true; // untested rigCaps.attenuators.push_back('\x20');
rigCaps.preamps.push_back('\x01');
rigCaps.bands = standardHF;
rigCaps.modes = { createMode(modeLSB, 0x00, "LSB"), createMode(modeUSB, 0x01, "USB"),
createMode(modeAM, 0x02, "AM"), createMode(modeFM, 0x05, "FM"),
createMode(modeCW, 0x03, "CW"), createMode(modeCW_R, 0x07, "CW-R"),
};
break;
case model737:
rigCaps.modelName = QString("IC-737");
rigCaps.rigctlModel = 3021;
rigCaps.hasSpectrum = false;
rigCaps.inputs.clear();
rigCaps.hasLan = false;
rigCaps.hasEthernet = false;
rigCaps.hasWiFi = false;
rigCaps.hasFDcomms = false;
rigCaps.hasATU = false;
rigCaps.hasPTTCommand = false;
rigCaps.useRTSforPTT = true;
rigCaps.hasDataModes = false;
rigCaps.attenuators.push_back('\x20');
rigCaps.preamps.push_back('\x01');
rigCaps.bands = standardHF;
rigCaps.modes = { createMode(modeLSB, 0x00, "LSB"), createMode(modeUSB, 0x01, "USB"),
createMode(modeAM, 0x02, "AM"), createMode(modeFM, 0x05, "FM"),
createMode(modeCW, 0x03, "CW"), createMode(modeCW_R, 0x07, "CW-R"),
};
break;
case model738:
rigCaps.modelName = QString("IC-738");
rigCaps.rigctlModel = 3022;
rigCaps.hasSpectrum = false;
rigCaps.inputs.clear();
rigCaps.hasLan = false;
rigCaps.hasEthernet = false;
rigCaps.hasWiFi = false;
rigCaps.hasFDcomms = false;
rigCaps.hasATU = false;
rigCaps.hasPTTCommand = false;
rigCaps.useRTSforPTT = true;
rigCaps.hasDataModes = false;
rigCaps.attenuators.push_back('\x20'); rigCaps.attenuators.push_back('\x20');
rigCaps.preamps.push_back('\x01'); rigCaps.preamps.push_back('\x01');
rigCaps.bands = standardHF; rigCaps.bands = standardHF;
@ -3662,7 +3724,27 @@ void rigCommander::determineRigCaps()
rigCaps.modes = commonModes; rigCaps.modes = commonModes;
rigCaps.transceiveCommand = QByteArrayLiteral("\x1a\x05\x00\x00"); rigCaps.transceiveCommand = QByteArrayLiteral("\x1a\x05\x00\x00");
break; break;
case model756:
rigCaps.modelName = QString("IC-756");
rigCaps.rigctlModel = 3026;
rigCaps.hasSpectrum = false;
rigCaps.inputs.clear();
rigCaps.hasLan = false;
rigCaps.hasEthernet = false;
rigCaps.hasWiFi = false;
rigCaps.hasFDcomms = false;
rigCaps.hasATU = true;
rigCaps.hasTBPF = true;
rigCaps.preamps.push_back('\x01');
rigCaps.preamps.push_back('\x02');
rigCaps.attenuators.insert(rigCaps.attenuators.end(),{ '\x06' , '\x12', '\x18'});
rigCaps.antennas = {0x00, 0x01};
rigCaps.bands = standardHF;
rigCaps.bands.push_back(bandGen);
rigCaps.bsr[bandGen] = 0x11;
rigCaps.modes = commonModes;
rigCaps.transceiveCommand = QByteArrayLiteral("\x1a\x05\x00\x00");
break;
case model756pro: case model756pro:
rigCaps.modelName = QString("IC-756 Pro"); rigCaps.modelName = QString("IC-756 Pro");
rigCaps.rigctlModel = 3027; rigCaps.rigctlModel = 3027;
@ -4471,7 +4553,7 @@ void rigCommander::setRigID(unsigned char rigID)
// It can be used for radios without Rig ID commands, // It can be used for radios without Rig ID commands,
// or to force a specific radio model // or to force a specific radio model
qInfo(logRig()) << "Sending rig ID to: (int)" << (int)rigID; qInfo(logRig()) << "Setting rig ID to: (int)" << (int)rigID;
lookingForRig = true; lookingForRig = true;

Wyświetl plik

@ -7,84 +7,7 @@ model_kind determineRadioModel(unsigned char rigID)
{ {
model_kind rig; model_kind rig;
rig = (model_kind)rigID;
switch(rigID)
{
case model7100:
rig = model7100;
break;
case model7200:
rig = model7200;
break;
case model7300:
rig = model7300;
break;
case modelR8600:
rig = modelR8600;
break;
case model7000:
rig = model7000;
break;
case model7410:
rig = model7410;
break;
case model7600:
rig = model7600;
break;
case model7610:
rig = model7610;
break;
case model7700:
rig = model7700;
break;
case model7800:
rig = model7800;
break;
case model7850:
rig = model7850;
break;
case model9700:
rig = model9700;
break;
case model706:
rig = model706;
break;
case model705:
rig = model705;
break;
case model718:
rig = model718;
break;
case model736:
rig = model736;
break;
case model746:
rig = model746;
break;
case model756pro:
rig = model756pro;
break;
case model756proii:
rig = model756proii;
break;
case model756proiii:
rig = model756proiii;
break;
case model910h:
rig = model910h;
break;
case model9100:
rig = model9100;
break;
default:
rig = modelUnknown;
break;
}
return rig; return rig;
} }

Wyświetl plik

@ -27,11 +27,15 @@ enum model_kind {
model7410 = 0x80, model7410 = 0x80,
model7850 = 0x8E, model7850 = 0x8E,
model9700 = 0xA2, model9700 = 0xA2,
model703 = 0x68,
model705 = 0xA4, model705 = 0xA4,
model706 = 0x58, model706 = 0x58,
model718 = 0x5E, model718 = 0x5E,
model736 = 0x40, model736 = 0x40,
model737 = 0x3C,
model738 = 0x44,
model746 = 0x56, model746 = 0x56,
model756 = 0x50,
model756pro = 0x5C, model756pro = 0x5C,
model756proii = 0x64, model756proii = 0x64,
model756proiii = 0x6E, model756proiii = 0x6E,

Wyświetl plik

@ -99,8 +99,6 @@ wfmain::wfmain(const QString settingsFile, const QString logFile, bool debugMode
qDebug(logSystem()) << "Running setUIToPrefs()"; qDebug(logSystem()) << "Running setUIToPrefs()";
setUIToPrefs(); setUIToPrefs();
loadColorPresetToUIandPlots(0);
qDebug(logSystem()) << "Running setInititalTiming()"; qDebug(logSystem()) << "Running setInititalTiming()";
setInitialTiming(); setInitialTiming();
@ -635,10 +633,13 @@ void wfmain::receiveCommReady()
if(prefs.CIVisRadioModel) if(prefs.CIVisRadioModel)
{ {
qInfo(logSystem()) << "Skipping Rig ID query, using user-supplied model from CI-V address: " << prefs.radioCIVAddr; qInfo(logSystem()) << "Skipping Rig ID query, using user-supplied model from CI-V address: " << prefs.radioCIVAddr;
emit setCIVAddr(prefs.radioCIVAddr);
emit setRigID(prefs.radioCIVAddr); emit setRigID(prefs.radioCIVAddr);
} else { } else {
emit setCIVAddr(prefs.radioCIVAddr);
emit getRigID(); emit getRigID();
getInitialRigState(); issueDelayedCommand(cmdGetRigID);
delayedCommand->start();
} }
} }
} }
@ -1217,6 +1218,9 @@ void wfmain::setUIToPrefs()
ui->colorPresetCombo->setItemText(pn, *p.presetName); ui->colorPresetCombo->setItemText(pn, *p.presetName);
} }
ui->colorPresetCombo->setCurrentIndex(prefs.currentColorPresetNumber);
loadColorPresetToUIandPlots(prefs.currentColorPresetNumber);
ui->wfthemeCombo->setCurrentIndex(ui->wfthemeCombo->findData(prefs.wftheme)); ui->wfthemeCombo->setCurrentIndex(ui->wfthemeCombo->findData(prefs.wftheme));
colorMap->setGradient(static_cast<QCPColorGradient::GradientPreset>(prefs.wftheme)); colorMap->setGradient(static_cast<QCPColorGradient::GradientPreset>(prefs.wftheme));
@ -1482,7 +1486,7 @@ void wfmain::loadSettings()
// Load in the color presets. The default values are already loaded. // Load in the color presets. The default values are already loaded.
settings->beginGroup("ColorPresets"); settings->beginGroup("ColorPresets");
settings->value("currentColorPresetNumber", prefs.currentColorPresetNumber).toInt(); prefs.currentColorPresetNumber = settings->value("currentColorPresetNumber", defPrefs.currentColorPresetNumber).toInt();
if(prefs.currentColorPresetNumber > numColorPresetsTotal-1) if(prefs.currentColorPresetNumber > numColorPresetsTotal-1)
prefs.currentColorPresetNumber = 0; prefs.currentColorPresetNumber = 0;
@ -3102,8 +3106,12 @@ void wfmain::doCmd(cmds cmd)
//qInfo(logSystem()) << "NOOP"; //qInfo(logSystem()) << "NOOP";
break; break;
case cmdGetRigID: case cmdGetRigID:
emit getRigID(); if(!haveRigCaps)
break; {
emit getRigID();
issueDelayedCommand(cmdGetRigID);
}
break;
case cmdGetRigCIV: case cmdGetRigCIV:
// if(!know rig civ already) // if(!know rig civ already)
if(!haveRigCaps) if(!haveRigCaps)
@ -3682,13 +3690,10 @@ void wfmain::receiveRigID(rigCapabilities rigCaps)
setBandButtons(); setBandButtons();
ui->tuneEnableChk->setEnabled(rigCaps.hasATU); ui->tuneEnableChk->setEnabled(rigCaps.hasATU);
ui->tuneNowBtn->setEnabled(rigCaps.hasATU); ui->tuneNowBtn->setEnabled(rigCaps.hasATU);
ui->useRTSforPTTchk->blockSignals(true); ui->useRTSforPTTchk->setChecked(prefs.forceRTSasPTT);
ui->useRTSforPTTchk->setChecked(rigCaps.useRTSforPTT);
ui->useRTSforPTTchk->blockSignals(false);
ui->audioSystemCombo->setEnabled(false); ui->audioSystemCombo->setEnabled(false);
ui->audioSystemServerCombo->setEnabled(false); ui->audioSystemServerCombo->setEnabled(false);
@ -6758,28 +6763,7 @@ void wfmain::on_underlayAverageBuffer_toggled(bool checked)
void wfmain::on_debugBtn_clicked() void wfmain::on_debugBtn_clicked()
{ {
qInfo(logSystem()) << "Debug button pressed."; qInfo(logSystem()) << "Debug button pressed.";
// issueDelayedCommand(cmdGetRigID); emit getRigID();
//emit getRigCIV();
//trxadj->show();
//setRadioTimeDatePrep();
//wf->setInteraction(QCP::iRangeZoom, true);
//wf->setInteraction(QCP::iRangeDrag, true);
plot->yAxis->setRange(QCPRange(plotFloor, plotCeiling));
colorMap->setDataRange(QCPRange(wfFloor, wfCeiling));
// bool ok;
// int height = QInputDialog::getInt(this, "wfview window fixed height", "number: ", 350, 1, 500, 1, &ok );
// this->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
// this->setMaximumSize(QSize(1025,height));
// this->setMinimumSize(QSize(1025,height));
// //this->setMaximumSize(QSize(929, 270));
// //this->setMinimumSize(QSize(929, 270));
// resize(minimumSize());
// adjustSize(); // main window
// adjustSize();
} }
// ---------- color helper functions: ---------- // // ---------- color helper functions: ---------- //