From 468cd2de0d716238fbb3f0f558a7e98f5b05ac6d Mon Sep 17 00:00:00 2001 From: Phil Taylor Date: Tue, 28 Mar 2023 21:58:46 +0100 Subject: [PATCH] Add various commands, monitor, NB, NR etc. --- controllersetup.cpp | 4 +- rigcommander.cpp | 48 +++++++++++-- rigcommander.h | 18 +++-- rigctld.h | 2 +- rigidentities.h | 3 + usbcontroller.cpp | 40 +++++++---- wfmain.cpp | 170 +++++++++++++++++++++++++++++++++++++++----- wfmain.h | 34 ++++++++- wfviewtypes.h | 9 ++- 9 files changed, 279 insertions(+), 49 deletions(-) diff --git a/controllersetup.cpp b/controllersetup.cpp index 473c915..f7c37b9 100644 --- a/controllersetup.cpp +++ b/controllersetup.cpp @@ -555,7 +555,7 @@ void controllerSetup::newDevice(USBDEVICE* dev, CONTROLLER* cntrl, QVectorinsertSeparator(onEvent->count()); offEvent->insertSeparator(offEvent->count()); @@ -565,7 +565,7 @@ void controllerSetup::newDevice(USBDEVICE* dev, CONTROLLER* cntrl, QVectorinsertSeparator(knobEvent->count()); } else { knobEvent->addItem(c.text, c.index); diff --git a/rigcommander.cpp b/rigcommander.cpp index 6ab0441..8b2371d 100644 --- a/rigcommander.cpp +++ b/rigcommander.cpp @@ -1854,6 +1854,11 @@ void rigCommander::parseLevels() emit haveTPBFOuter(level); state.set(PBTOUT, level, false); break; + case '\x06': + // NR Level + emit haveNRLevel(level); + state.set(NR, level, false); + break; case '\x09': // CW Pitch emit haveCwPitch(level); @@ -1889,7 +1894,7 @@ void rigCommander::parseLevels() break; case '\x15': // monitor level - emit haveMonitorLevel(level); + emit haveMonitorGain(level); state.set(MONITORLEVEL, level, false); break; case '\x16': @@ -2409,9 +2414,9 @@ void rigCommander::setCompLevel(unsigned char compLevel) prepDataAndSend(payload); } -void rigCommander::setMonitorLevel(unsigned char monitorLevel) +void rigCommander::setMonitorGain(unsigned char monitorLevel) { - QByteArray payload("\x14\x0E"); + QByteArray payload("\x14\x15"); payload.append(bcdEncodeInt(monitorLevel)); prepDataAndSend(payload); } @@ -2430,6 +2435,22 @@ void rigCommander::setAntiVoxGain(unsigned char gain) prepDataAndSend(payload); } +void rigCommander::setNBLevel(unsigned char level) +{ + if (rigCaps.hasNB) { + QByteArray payload(rigCaps.nbCommand); + payload.append(bcdEncodeInt(level)); + prepDataAndSend(payload); + } +} + +void rigCommander::setNRLevel(unsigned char level) +{ + QByteArray payload("\x14\x06"); + payload.append(bcdEncodeInt(level)); + prepDataAndSend(payload); +} + void rigCommander::getRfGain() { @@ -2485,7 +2506,7 @@ void rigCommander::getCompLevel() prepDataAndSend(payload); } -void rigCommander::getMonitorLevel() +void rigCommander::getMonitorGain() { QByteArray payload("\x14\x15"); prepDataAndSend(payload); @@ -2503,6 +2524,19 @@ void rigCommander::getAntiVoxGain() prepDataAndSend(payload); } +void rigCommander::getNBLevel() +{ + if (rigCaps.hasNB) { + prepDataAndSend(rigCaps.nbCommand); + } +} + +void rigCommander::getNRLevel() +{ + QByteArray payload("\x14\x06"); + prepDataAndSend(payload); +} + void rigCommander::getLevels() { // Function to grab all levels @@ -2512,7 +2546,7 @@ void rigCommander::getLevels() getTxLevel(); // 0x0A getMicGain(); // 0x0B getCompLevel(); // 0x0E -// getMonitorLevel(); // 0x15 +// getMonitorGain(); // 0x15 // getVoxGain(); // 0x16 // getAntiVoxGain(); // 0x17 } @@ -5289,9 +5323,9 @@ void rigCommander::stateUpdated() break; case MONITORLEVEL: if (i.value()._valid) { - setMonitorLevel(state.getChar(MONITORLEVEL)); + setMonitorGain(state.getChar(MONITORLEVEL)); } - getMonitorLevel(); + getMonitorGain(); break; case VOXGAIN: if (i.value()._valid) { diff --git a/rigcommander.h b/rigcommander.h index 9c22a90..0d128a3 100644 --- a/rigcommander.h +++ b/rigcommander.h @@ -128,7 +128,8 @@ public slots: void getManualNotch(); void getPassband(); - void getCwPitch(); + void getNBLevel(); + void getNRLevel(); void getCwPitch(); void setCwPitch(unsigned char pitch); void getDashRatio(); void setDashRatio(unsigned char ratio); @@ -167,7 +168,7 @@ public slots: void getTxLevel(); void getMicGain(); void getCompLevel(); - void getMonitorLevel(); + void getMonitorGain(); void getVoxGain(); void getAntiVoxGain(); void getUSBGain(); @@ -193,13 +194,15 @@ public slots: void setACCGain(unsigned char gain); void setACCGain(unsigned char gain, unsigned char ab); void setCompLevel(unsigned char compLevel); - void setMonitorLevel(unsigned char monitorLevel); + void setMonitorGain(unsigned char monitorLevel); void setVoxGain(unsigned char gain); void setAntiVoxGain(unsigned char gain); void setModInput(rigInput input, bool dataOn); void setModInputLevel(rigInput input, unsigned char level); void setAfMute(bool muteOn); void setDialLock(bool lockOn); + void setNBLevel(unsigned char level); + void setNRLevel(unsigned char level); // NB, NR, IP+: void setIPP(bool enabled); @@ -331,9 +334,16 @@ signals: void haveTxPower(unsigned char level); void haveMicGain(unsigned char level); void haveCompLevel(unsigned char level); - void haveMonitorLevel(unsigned char level); + void haveMonitorGain(unsigned char level); void haveVoxGain(unsigned char gain); void haveAntiVoxGain(unsigned char gain); + void haveNBLevel(unsigned char level); + void haveNRLevel(unsigned char level); + void haveVox(bool en); + void haveMonitor(bool en); + void haveComp(bool en); + void haveNB(bool en); + void haveNR(bool en); // Modulation source and gain: void haveModInput(rigInput input, bool isData); diff --git a/rigctld.h b/rigctld.h index 372b09f..2379401 100644 --- a/rigctld.h +++ b/rigctld.h @@ -360,7 +360,7 @@ signals: void setMicGain(quint8); void setCompLevel(quint8); void setTxPower(quint8); - void setMonitorLevel(quint8); + void setMonitorGain(quint8); void setVoxGain(quint8); void setAntiVoxGain(quint8); void setSpectrumRefLevel(int); diff --git a/rigidentities.h b/rigidentities.h index 8202506..5673927 100644 --- a/rigidentities.h +++ b/rigidentities.h @@ -128,6 +128,9 @@ struct rigCapabilities { quint16 spectAmpMax; quint16 spectLenMax; + bool hasNB = false; + QByteArray nbCommand; + bool hasDD; bool hasDV; bool hasATU; diff --git a/usbcontroller.cpp b/usbcontroller.cpp index 20ebab6..4e03c75 100644 --- a/usbcontroller.cpp +++ b/usbcontroller.cpp @@ -1586,14 +1586,14 @@ void usbController::loadCommands() commands.append(COMMAND(num++, "PTT Toggle", commandButton, cmdPTTToggle, 0x0)); commands.append(COMMAND(num++, "VFOA", commandKnob, cmdSetFreq, 0x0)); commands.append(COMMAND(num++, "VFOB", commandKnob, cmdSetFreq, 0x1)); - commands.append(COMMAND(-1, "Span/Step", commandKnob, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Span/Step", commandKnob, cmdSeparator, 0x0)); commands.append(COMMAND(num++, "Tune", commandButton, cmdStartATU, 0x0)); - commands.append(COMMAND(-1, "Span/Step", commandButton, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Span/Step", commandButton, cmdSeparator, 0x0)); commands.append(COMMAND(num++, "Step+", commandButton, cmdSetStepUp, 0x0)); commands.append(COMMAND(num++, "Step-", commandButton, cmdSetStepDown, 0x0)); commands.append(COMMAND(num++, "Span+", commandButton, cmdSetSpanUp, 0x0)); commands.append(COMMAND(num++, "Span-", commandButton, cmdSetSpanDown, 0x0)); - commands.append(COMMAND(-1, "Modes", commandButton, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Modes", commandButton, cmdSeparator, 0x0)); commands.append(COMMAND(num++, "Mode+", commandButton, cmdSetModeUp, 0x0)); commands.append(COMMAND(num++, "Mode-", commandButton, cmdSetModeDown, 0x0)); commands.append(COMMAND(num++, "Mode LSB", commandButton, cmdSetMode, modeLSB)); @@ -1610,7 +1610,7 @@ void usbController::loadCommands() commands.append(COMMAND(num++, "Mode PSKR", commandButton, cmdSetMode, modePSK_R)); commands.append(COMMAND(num++, "Mode DV", commandButton, cmdSetMode, modeDV)); commands.append(COMMAND(num++, "Mode DD", commandButton, cmdSetMode, modeDD)); - commands.append(COMMAND(-1, "Bands", commandButton, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Bands", commandButton, cmdSeparator, 0x0)); commands.append(COMMAND(num++, "Band+", commandButton, cmdSetBandUp, 0x0)); commands.append(COMMAND(num++, "Band-", commandButton, cmdSetBandDown, 0x0)); commands.append(COMMAND(num++, "Band 23cm", commandButton, cmdGetBandStackReg, band23cm)); @@ -1633,19 +1633,25 @@ void usbController::loadCommands() commands.append(COMMAND(num++, "Band 630m", commandButton, cmdGetBandStackReg, band630m)); commands.append(COMMAND(num++, "Band 2200m", commandButton, cmdGetBandStackReg, band2200m)); commands.append(COMMAND(num++, "Band GEN", commandButton, cmdGetBandStackReg, bandGen)); - commands.append(COMMAND(-1, "NB/NR", commandButton, cmdNone, 0x0)); - commands.append(COMMAND(num++, "NR On", commandButton, cmdNone, 0x0)); - commands.append(COMMAND(num++, "NR Off", commandButton, cmdNone, 0x0)); - commands.append(COMMAND(num++, "NB On", commandButton, cmdNone, 0x0)); - commands.append(COMMAND(num++, "NB Off", commandButton, cmdNone, 0x0)); - commands.append(COMMAND(-1, "Split", commandButton, cmdNone, 0x0)); + commands.append(COMMAND(num++, "NB/NR", commandButton, cmdSeparator, 0x0)); + commands.append(COMMAND(num++, "NR On", commandButton, cmdSetNR, 0x01)); + commands.append(COMMAND(num++, "NR Off", commandButton, cmdSetNR, 0x0)); + commands.append(COMMAND(num++, "NB On", commandButton, cmdSetNB, 0x01)); + commands.append(COMMAND(num++, "NB Off", commandButton, cmdSetNB, 0x0)); + commands.append(COMMAND(num++, "Moni On", commandButton, cmdSetMonitor, 0x01)); + commands.append(COMMAND(num++, "Moni Off", commandButton, cmdSetMonitor, 0x0)); + commands.append(COMMAND(num++, "Comp On", commandButton, cmdSetComp, 0x01)); + commands.append(COMMAND(num++, "Comp Off", commandButton, cmdSetComp, 0x0)); + commands.append(COMMAND(num++, "Vox On", commandButton, cmdSetVox, 0x01)); + commands.append(COMMAND(num++, "Vox Off", commandButton, cmdSetVox, 0x0)); + commands.append(COMMAND(num++, "Split", commandButton, cmdNone, 0x0)); commands.append(COMMAND(num++, "Split On", commandButton, cmdSetQuickSplit, 0x01)); commands.append(COMMAND(num++, "Split Off", commandButton, cmdSetQuickSplit, 0x0)); commands.append(COMMAND(num++, "Swap VFO", commandButton, cmdVFOSwap, 0x0)); - commands.append(COMMAND(-1, "Scope", commandButton, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Scope", commandButton, cmdNone, 0x0)); commands.append(COMMAND(num++, "Spectrum", commandButton, cmdLCDSpectrum, 0x0)); commands.append(COMMAND(num++, "Waterfall", commandButton, cmdLCDWaterfall, 0x0)); - commands.append(COMMAND(-1, "Pages", commandButton, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Pages", commandButton, cmdSeparator, 0x0)); commands.append(COMMAND(num++, "Page Down", commandButton, cmdPageDown, 0x0)); commands.append(COMMAND(num++, "Page Up", commandButton, cmdPageUp, 0x0)); @@ -1655,11 +1661,17 @@ void usbController::loadCommands() commands.append(COMMAND(num++, "Mic Gain", commandKnob, cmdSetMicGain, cmdGetMicGain, 0xff)); commands.append(COMMAND(num++, "Mod Level", commandKnob, cmdSetModLevel, cmdNone, 0xff)); commands.append(COMMAND(num++, "Squelch", commandKnob, cmdSetSql, cmdGetSql, 0xff)); - commands.append(COMMAND(-1, "Span/Step", commandKnob, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Monitor", commandKnob, cmdSetMonitorGain, cmdGetMonitorGain, 0xff)); + commands.append(COMMAND(num++, "Compressor", commandKnob, cmdSetCompLevel, cmdGetCompLevel, 0xff)); + commands.append(COMMAND(num++, "Vox Level", commandKnob, cmdSetVoxGain, cmdGetVoxGain, 0xff)); + commands.append(COMMAND(num++, "Anti-Vox", commandKnob, cmdSetAntiVoxGain, cmdGetAntiVoxGain, 0xff)); + commands.append(COMMAND(num++, "NB Level", commandKnob, cmdSetNBLevel, cmdGetNBLevel, 0xff)); + commands.append(COMMAND(num++, "NR Level", commandKnob, cmdSetNRLevel, cmdGetNRLevel, 0xff)); + commands.append(COMMAND(num++, "Span/Step", commandKnob, cmdSeparator, 0x0)); commands.append(COMMAND(num++, "IF Shift", commandKnob, cmdSetIFShift, cmdGetIFShift, 0xff)); commands.append(COMMAND(num++, "In PBT", commandKnob, cmdSetTPBFInner, cmdGetTPBFInner, 0xff)); commands.append(COMMAND(num++, "Out PBT", commandKnob, cmdSetTPBFOuter, cmdGetTPBFOuter, 0xff)); - commands.append(COMMAND(-1, "Span/Step", commandKnob, cmdNone, 0x0)); + commands.append(COMMAND(num++, "Span/Step", commandKnob, cmdSeparator, 0x0)); commands.append(COMMAND(num++, "CW Pitch", commandKnob, cmdSetCwPitch, cmdGetCwPitch, 0xff)); commands.append(COMMAND(num++, "CW Speed", commandKnob, cmdSetKeySpeed, cmdGetKeySpeed, 0xff)); } diff --git a/wfmain.cpp b/wfmain.cpp index 44aea48..d9c8138 100644 --- a/wfmain.cpp +++ b/wfmain.cpp @@ -349,6 +349,12 @@ void wfmain::rigConnections() connect(this, SIGNAL(setPTT(bool)), rig, SLOT(setPTT(bool))); connect(this, SIGNAL(getPTT()), rig, SLOT(getPTT())); + connect(this, SIGNAL(getVox()), rig, SLOT(getVox())); + connect(this, SIGNAL(getMonitor()), rig, SLOT(getMonitor())); + connect(this, SIGNAL(getComp()), rig, SLOT(getComp())); + connect(this, SIGNAL(getNB()), rig, SLOT(getNB())); + connect(this, SIGNAL(getNR()), rig, SLOT(getNR())); + connect(this, SIGNAL(selectVFO(vfo_t)), rig, SLOT(selectVFO(vfo_t))); connect(this, SIGNAL(sendVFOSwap()), rig, SLOT(exchangeVFOs())); connect(this, SIGNAL(sendVFOEqualAB()), rig, SLOT(equalizeVFOsAB())); @@ -389,6 +395,12 @@ void wfmain::rigConnections() connect(rig, SIGNAL(haveDataMode(bool)), this, SLOT(receiveDataModeStatus(bool))); connect(rig, SIGNAL(havePassband(quint16)), this, SLOT(receivePassband(quint16))); connect(rig, SIGNAL(haveCwPitch(unsigned char)), this, SLOT(receiveCwPitch(unsigned char))); + connect(rig, SIGNAL(haveMonitorGain(unsigned char)), this, SLOT(receiveMonitorGain(unsigned char))); + connect(rig, SIGNAL(haveVoxGain(unsigned char)), this, SLOT(receiveVoxGain(unsigned char))); + connect(rig, SIGNAL(haveAntiVoxGain(unsigned char)), this, SLOT(receiveAntiVoxGain(unsigned char))); + connect(rig, SIGNAL(haveNBLevel(unsigned char)), this, SLOT(receiveNBLevel(unsigned char))); + connect(rig, SIGNAL(haveNRLevel(unsigned char)), this, SLOT(receiveNRLevel(unsigned char))); + connect(rig, SIGNAL(haveCompLevel(unsigned char)), this, SLOT(receiveCompLevel(unsigned char))); // Repeater, duplex, and split: connect(rpt, SIGNAL(getDuplexMode()), rig, SLOT(getDuplexMode())); @@ -473,16 +485,6 @@ void wfmain::rigConnections() connect(this, SIGNAL(setRptDuplexOffset(freqt)), rig, SLOT(setRptDuplexOffset(freqt))); connect(this, SIGNAL(getDuplexMode()), rig, SLOT(getDuplexMode())); - connect(this, SIGNAL(getPassband()), rig, SLOT(getPassband())); - connect(this, SIGNAL(setPassband(quint16)), rig, SLOT(setPassband(quint16))); - connect(this, SIGNAL(getCwPitch()), rig, SLOT(getCwPitch())); - connect(this, SIGNAL(getDashRatio()), rig, SLOT(getDashRatio())); - connect(this, SIGNAL(getPskTone()), rig, SLOT(getPskTone())); - connect(this, SIGNAL(getRttyMark()), rig, SLOT(getRttyMark())); - connect(this, SIGNAL(getTone()), rig, SLOT(getTone())); - connect(this, SIGNAL(getTSQL()), rig, SLOT(getTSQL())); - connect(this, SIGNAL(getRptAccessMode()), rig, SLOT(getRptAccessMode())); - connect(this, SIGNAL(getModInput(bool)), rig, SLOT(getModInput(bool))); connect(rig, SIGNAL(haveModInput(rigInput,bool)), this, SLOT(receiveModInput(rigInput, bool))); connect(this, SIGNAL(setModInput(rigInput, bool)), rig, SLOT(setModInput(rigInput,bool))); @@ -505,6 +507,14 @@ void wfmain::rigConnections() connect(this, SIGNAL(setMode(unsigned char, unsigned char)), rig, SLOT(setMode(unsigned char, unsigned char))); connect(this, SIGNAL(setMode(mode_info)), rig, SLOT(setMode(mode_info))); + connect(this, SIGNAL(setVox(bool)), rig, SLOT(setVox(bool))); + connect(this, SIGNAL(setMonitor(bool)), rig, SLOT(setMonitor(bool))); + connect(this, SIGNAL(setComp(bool)), rig, SLOT(setComp(bool))); + connect(this, SIGNAL(setNb(bool)), rig, SLOT(setNb(bool))); + connect(this, SIGNAL(setNr(bool)), rig, SLOT(setNr(bool))); + + connect(this, SIGNAL(setPassband(quint16)), rig, SLOT(setPassband(quint16))); + // Levels (read and write) // Levels: Query: connect(this, SIGNAL(getLevels()), rig, SLOT(getLevels())); @@ -518,7 +528,20 @@ void wfmain::rigConnections() connect(this, SIGNAL(getMicGain()), rig, SLOT(getMicGain())); connect(this, SIGNAL(getSpectrumRefLevel()), rig, SLOT(getSpectrumRefLevel())); connect(this, SIGNAL(getModInputLevel(rigInput)), rig, SLOT(getModInputLevel(rigInput))); - + connect(this, SIGNAL(getPassband()), rig, SLOT(getPassband())); + connect(this, SIGNAL(getMonitorGain()), rig, SLOT(getMonitorGain())); + connect(this, SIGNAL(getVoxGain()), rig, SLOT(getVoxGain())); + connect(this, SIGNAL(getAntiVoxGain()), rig, SLOT(getAntVoxGain())); + connect(this, SIGNAL(getNBLevel()), rig, SLOT(getNBLevel())); + connect(this, SIGNAL(getNRLevel()), rig, SLOT(getNRLevel())); + connect(this, SIGNAL(getCompLevel()), rig, SLOT(getCompLevel())); + connect(this, SIGNAL(getCwPitch()), rig, SLOT(getCwPitch())); + connect(this, SIGNAL(getDashRatio()), rig, SLOT(getDashRatio())); + connect(this, SIGNAL(getPskTone()), rig, SLOT(getPskTone())); + connect(this, SIGNAL(getRttyMark()), rig, SLOT(getRttyMark())); + connect(this, SIGNAL(getTone()), rig, SLOT(getTone())); + connect(this, SIGNAL(getTSQL()), rig, SLOT(getTSQL())); + connect(this, SIGNAL(getRptAccessMode()), rig, SLOT(getRptAccessMode())); // Levels: Set: connect(this, SIGNAL(setRfGain(unsigned char)), rig, SLOT(setRfGain(unsigned char))); @@ -529,11 +552,13 @@ void wfmain::rigConnections() connect(this, SIGNAL(setTPBFOuter(unsigned char)), rig, SLOT(setTPBFOuter(unsigned char))); connect(this, SIGNAL(setTxPower(unsigned char)), rig, SLOT(setTxPower(unsigned char))); connect(this, SIGNAL(setMicGain(unsigned char)), rig, SLOT(setMicGain(unsigned char))); - connect(this, SIGNAL(setMonitorLevel(unsigned char)), rig, SLOT(setMonitorLevel(unsigned char))); + connect(this, SIGNAL(setMonitorGain(unsigned char)), rig, SLOT(setMonitorGain(unsigned char))); connect(this, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char))); connect(this, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char))); connect(this, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int))); connect(this, SIGNAL(setModLevel(rigInput, unsigned char)), rig, SLOT(setModInputLevel(rigInput, unsigned char))); + connect(this, SIGNAL(setNBLevel(unsigned char)), rig, SLOT(setNBLevel(unsigned char))); + connect(this, SIGNAL(setNBLevel(unsigned char)), rig, SLOT(setNBLevel(unsigned char))); // Levels: handle return on query: connect(rig, SIGNAL(haveRfGain(unsigned char)), this, SLOT(receiveRfGain(unsigned char))); @@ -4052,6 +4077,67 @@ void wfmain::doCmd(commandtype cmddata) emit setPassband(pass); break; } + case cmdSetMonitorGain: + { + quint16 gain = (*std::static_pointer_cast(data)); + emit setMonitorGain(gain); + break; + } + case cmdSetVoxGain: + { + quint16 gain = (*std::static_pointer_cast(data)); + emit setVoxGain(gain); + break; + } + case cmdSetAntiVoxGain: + { + quint16 gain = (*std::static_pointer_cast(data)); + emit setAntiVoxGain(gain); + break; + } + case cmdSetNBLevel: + { + quint16 level = (*std::static_pointer_cast(data)); + emit setNBLevel(level); + break; + } + case cmdSetNRLevel: + { + quint16 level = (*std::static_pointer_cast(data)); + emit setNRLevel(level); + break; + } + case cmdSetMonitor: + { + bool en = (*std::static_pointer_cast(data)); + emit setMonitor(en); + break; + } + case cmdSetVox: + { + bool en = (*std::static_pointer_cast(data)); + emit setVox(en); + break; + } + case cmdSetComp: + { + bool en = (*std::static_pointer_cast(data)); + emit setCompressor(en); + break; + } + case cmdSetNB: + { + bool en = (*std::static_pointer_cast(data)); + emit setNb(en); + break; + } + case cmdSetNR: + { + bool en = (*std::static_pointer_cast(data)); + emit setNr(en); + break; + } + default: doCmd(cmd); break; @@ -4138,6 +4224,23 @@ void wfmain::doCmd(cmds cmd) case cmdGetPassband: emit getPassband(); break; + case cmdGetMonitorGain: + emit getMonitorGain(); + break; + case cmdGetVoxGain: + emit getVoxGain(); + break; + case cmdGetAntiVoxGain: + emit getAntiVoxGain(); + break; + case cmdGetNBLevel: + emit getNBLevel(); + break; + case cmdGetNRLevel: + emit getNRLevel(); + break; + case cmdGetCompLevel: + emit getCompLevel(); case cmdGetCwPitch: emit getCwPitch(); break; @@ -7187,22 +7290,57 @@ void wfmain::receiveMeter(meterKind inMeter, unsigned char level) void wfmain::receiveCompLevel(unsigned char compLevel) { - (void)compLevel; + emit sendLevel(cmdGetCompLevel,compLevel); } void wfmain::receiveMonitorGain(unsigned char monitorGain) { - (void)monitorGain; + emit sendLevel(cmdGetMonitorGain,monitorGain); } void wfmain::receiveVoxGain(unsigned char voxGain) { - (void)voxGain; + emit sendLevel(cmdGetVoxGain,voxGain); } void wfmain::receiveAntiVoxGain(unsigned char antiVoxGain) { - (void)antiVoxGain; + emit sendLevel(cmdGetAntiVoxGain,antiVoxGain); +} + +void wfmain::receiveNBLevel(unsigned char level) +{ + emit sendLevel(cmdGetNBLevel,level); +} + +void wfmain::receiveNRLevel(unsigned char level) +{ + emit sendLevel(cmdGetNRLevel,level); +} + +void wfmain::receiveComp(bool en) +{ + Q_UNUSED(en); +} + +void wfmain::receiveMonitor(bool en) +{ + Q_UNUSED(en); +} + +void wfmain::receiveVox(bool en) +{ + Q_UNUSED(en); +} + +void wfmain::receiveNB(bool en) +{ + Q_UNUSED(en); +} + +void wfmain::receiveNR(bool en) +{ + Q_UNUSED(en); } void wfmain::on_txPowerSlider_valueChanged(int value) diff --git a/wfmain.h b/wfmain.h index b5e41f7..08bcfa0 100644 --- a/wfmain.h +++ b/wfmain.h @@ -158,7 +158,20 @@ signals: void getModInputLevel(rigInput input); void getMeters(meterKind meter); void getPassband(); + void getVoxGain(); + void getAntiVoxGain(); + void getMonitorGain(); + void getNBLevel(); + void getNRLevel(); + void getCompLevel(); void getCwPitch(); + + void getVox(); + void getMonitor(); + void getCompressor(); + void getNb(); + void getNr(); + void getDashRatio(); void getPskTone(); void getRttyMark(); @@ -177,9 +190,18 @@ signals: void setMicGain(unsigned char); void setCompLevel(unsigned char); void setTxPower(unsigned char); - void setMonitorLevel(unsigned char); + void setMonitorGain(unsigned char); void setVoxGain(unsigned char); void setAntiVoxGain(unsigned char); + void setNBLevel(unsigned char level); + void setNRLevel(unsigned char level); + + void setVox(bool en); + void setMonitor(bool en); + void setCompressor(bool en); + void setNb(bool en); + void setNr(bool en); + void setSpectrumRefLevel(int); void setModLevel(rigInput input, unsigned char level); @@ -188,6 +210,7 @@ signals: void setACCBGain(unsigned char level); void setUSBGain(unsigned char level); void setLANGain(unsigned char level); + void setPassband(quint16 pass); // PTT, ATU, ATT, Antenna, Preamp: @@ -314,9 +337,17 @@ private slots: void receiveModInput(rigInput input, bool dataOn); //void receiveDuplexMode(duplexMode dm); void receivePassband(quint16 pass); + void receiveMonitorGain(unsigned char pass); + void receiveNBLevel(unsigned char pass); + void receiveNRLevel(unsigned char pass); void receiveCwPitch(unsigned char pitch); void receiveTPBFInner(unsigned char level); void receiveTPBFOuter(unsigned char level); + void receiveVox(bool en); + void receiveMonitor(bool en); + void receiveComp(bool en); + void receiveNB(bool en); + void receiveNR(bool en); // Levels: void receiveRfGain(unsigned char level); @@ -332,7 +363,6 @@ private slots: void receiveTxPower(unsigned char power); void receiveMicGain(unsigned char gain); void receiveCompLevel(unsigned char compLevel); - void receiveMonitorGain(unsigned char monitorGain); void receiveVoxGain(unsigned char voxGain); void receiveAntiVoxGain(unsigned char antiVoxGain); void receiveSpectrumRefLevel(int level); diff --git a/wfviewtypes.h b/wfviewtypes.h index 16e25d7..bea5fd8 100644 --- a/wfviewtypes.h +++ b/wfviewtypes.h @@ -150,9 +150,12 @@ enum cmds { cmdNone, cmdGetRigID, cmdGetRigCIV, cmdGetFreq, cmdGetFreqB, cmdSetFreq, cmdGetMode, cmdSetMode, cmdGetDataMode, cmdSetModeFilter, cmdSetDataModeOn, cmdSetDataModeOff, cmdGetRitEnabled, cmdGetRitValue, cmdSpecOn, cmdSpecOff, cmdDispEnable, cmdDispDisable, cmdGetRxGain, cmdSetRxRfGain, cmdGetAfGain, cmdSetAfGain, - cmdGetSql, cmdSetSql, cmdGetIFShift, cmdSetIFShift, cmdGetTPBFInner, cmdSetTPBFInner, - cmdGetTPBFOuter, cmdSetTPBFOuter, cmdGetPassband, cmdSetPassband, + cmdGetSql, cmdSetSql, cmdGetIFShift, cmdSetIFShift, cmdGetNRLevel, cmdSetNRLevel, cmdGetTPBFInner, cmdSetTPBFInner, + cmdGetTPBFOuter, cmdSetTPBFOuter, cmdGetPassband, cmdSetPassband, cmdGetNBLevel, cmdSetNBLevel, + cmdGetCompLevel, cmdSetCompLevel, + cmdGetMonitorGain, cmdSetMonitorGain, cmdGetVoxGain, cmdSetVoxGain, cmdGetAntiVoxGain, cmdSetAntiVoxGain, cmdGetCwPitch, cmdGetPskTone, cmdGetRttyMark, cmdSetCwPitch, cmdSetPskTone, cmdSetRttyMark, + cmdGetVox,cmdSetVox, cmdGetMonitor,cmdSetMonitor, cmdGetComp, cmdSetComp, cmdGetNB, cmdSetNB, cmdGetNR, cmdSetNR, cmdSetATU, cmdStartATU, cmdGetATUStatus, cmdGetSpectrumMode, cmdGetSpectrumSpan, cmdScopeCenterMode, cmdScopeFixedMode, cmdGetPTT, cmdSetPTT,cmdPTTToggle, @@ -171,7 +174,7 @@ enum cmds { // Below Only used for USB Controller at the moment. cmdSetBandUp, cmdSetBandDown, cmdSetModeUp, cmdSetModeDown, cmdSetStepUp, cmdSetStepDown, cmdSetSpanUp, cmdSetSpanDown, cmdIFFilterUp, cmdIFFilterDown, cmdPageDown, cmdPageUp, - cmdLCDWaterfall, cmdLCDSpectrum + cmdLCDWaterfall, cmdLCDSpectrum, cmdSeparator }; struct commandtype {