kopia lustrzana https://gitlab.com/eliggett/wfview
Add some levels and other functions
rodzic
04bd237eb4
commit
797ed3bc5e
110
rigctld.cpp
110
rigctld.cpp
|
@ -456,12 +456,12 @@ void rigCtlClient::socketReadyRead()
|
|||
else if (command[0] == "l" || command[0] == "get_level")
|
||||
{
|
||||
QString resp;
|
||||
int value = 0;
|
||||
float value = 0;
|
||||
if (longReply && command.length() > 1) {
|
||||
resp.append(QString("%1: ").arg(command[1]));
|
||||
}
|
||||
if (command[1] == "STRENGTH") {
|
||||
value = rigState->sMeter;
|
||||
value = (float)rigState->sMeter;
|
||||
if (value > 240)
|
||||
value = value - 176;
|
||||
else if (value > 120)
|
||||
|
@ -477,15 +477,96 @@ void rigCtlClient::socketReadyRead()
|
|||
else if (value > 0)
|
||||
value = value - 54;
|
||||
}
|
||||
else if (command[1] == "AF") {
|
||||
value = (float)rigState->afGain / 255;
|
||||
}
|
||||
else if (command[1] == "RF") {
|
||||
value = (float)rigState->rfGain / 255;
|
||||
}
|
||||
else if (command[1] == "SQL") {
|
||||
value = (float)rigState->squelch / 255;
|
||||
}
|
||||
else if (command[1] == "COMP") {
|
||||
value = (float)rigState->compLevel / 255;
|
||||
}
|
||||
else if (command[1] == "MICGAIN") {
|
||||
value = (float)rigState->micGain / 255;
|
||||
emit parent->setMicGain(value);
|
||||
}
|
||||
else if (command[1] == "MON") {
|
||||
value = (float)rigState->monitorLevel / 255;
|
||||
}
|
||||
else if (command[1] == "VOXGAIN") {
|
||||
value = (float)rigState->voxGain / 255;
|
||||
}
|
||||
else if (command[1] == "ANTIVOX") {
|
||||
value = (float)rigState->antiVoxGain / 255;
|
||||
}
|
||||
else if (command[1] == "RFPOWER") {
|
||||
value = (float)rigState->txPower / 255;
|
||||
}
|
||||
|
||||
resp.append(QString("%1").arg(value));
|
||||
response.append(resp);
|
||||
}
|
||||
else if (command[0] == "L" || command[0] == "set_level")
|
||||
else if (command[0] == "L" || command[0] == "set_level" && command.length() > 2)
|
||||
{
|
||||
int value;
|
||||
setCommand = true;
|
||||
if (command[1] == "AF") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setAfGain(value);
|
||||
}
|
||||
else if (command[1] == "RF") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setRfGain(value);
|
||||
}
|
||||
else if (command[1] == "SQL") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setSql(value);
|
||||
}
|
||||
else if (command[1] == "COMP") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setCompLevel(value);
|
||||
}
|
||||
else if (command[1] == "MICGAIN") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setMicGain(value);
|
||||
}
|
||||
else if (command[1] == "MON") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setMonitorLevel(value);
|
||||
}
|
||||
else if (command[1] == "VOXGAIN") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setVoxGain(value);
|
||||
}
|
||||
else if (command[1] == "ANTIVOX") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setAntiVoxGain(value);
|
||||
}
|
||||
else if (command[1] == "RFPOWER") {
|
||||
value = command[2].toFloat() * 255;
|
||||
emit parent->setTxPower(value);
|
||||
}
|
||||
|
||||
qInfo(logRigCtlD()) << "Setting:" << command[1] << command[2] << value;
|
||||
|
||||
}
|
||||
else if (command[0] == "u" || command[0] == "get_func")
|
||||
{
|
||||
QString resp;
|
||||
if (longReply && command.length() > 1) {
|
||||
resp.append(QString("%1: ").arg(command[1]));
|
||||
}
|
||||
resp.append(QString("%1").arg(0));
|
||||
response.append(resp);
|
||||
}
|
||||
else if (command[0] == "R" || command[0] == "set_func")
|
||||
{
|
||||
setCommand = true;
|
||||
}
|
||||
else if (command[0] == 0x88 || command[0] == "get_powerstat")
|
||||
{
|
||||
QString resp;
|
||||
if (longReply && command.length() > 1) {
|
||||
|
@ -493,10 +574,17 @@ void rigCtlClient::socketReadyRead()
|
|||
}
|
||||
resp.append(QString("%1").arg(0));
|
||||
response.append(resp);
|
||||
}
|
||||
else if (command[0] == "R" || command[0] == "set_func")
|
||||
}
|
||||
else if (command.length() > 1 && command[0] == 0x87 || command[0] == "set_powerstat")
|
||||
{
|
||||
setCommand = true;
|
||||
setCommand = true;
|
||||
if (command[1] == "0")
|
||||
{
|
||||
emit parent->sendPowerOff();
|
||||
}
|
||||
else {
|
||||
emit parent->sendPowerOn();
|
||||
}
|
||||
}
|
||||
else {
|
||||
qInfo(logRigCtlD()) << "Unimplemented command" << commandBuffer;
|
||||
|
@ -802,10 +890,18 @@ QString rigCtlClient::generateFreqRange(bandType band)
|
|||
{
|
||||
for (int i = 0; mode_str[i].str[0] != '\0'; i++)
|
||||
{
|
||||
if (!strcmp(mode.name.toLocal8Bit(), mode_str[i].str))
|
||||
QString curMode = mode.name;
|
||||
if (!strcmp(curMode.toLocal8Bit(), mode_str[i].str))
|
||||
{
|
||||
modes |= mode_str[i].mode;
|
||||
}
|
||||
if (rigCaps.hasDataModes) {
|
||||
curMode = "PKT" + mode.name;
|
||||
if (!strcmp(curMode.toLocal8Bit(), mode_str[i].str))
|
||||
{
|
||||
modes |= mode_str[i].mode;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
QString ret = "";
|
||||
|
|
17
rigctld.h
17
rigctld.h
|
@ -126,6 +126,23 @@ signals:
|
|||
void setVFO(unsigned char vfo);
|
||||
void setSplit(unsigned char split);
|
||||
|
||||
// Power
|
||||
void sendPowerOn();
|
||||
void sendPowerOff();
|
||||
|
||||
//Level set
|
||||
void setRfGain(unsigned char level);
|
||||
void setAfGain(unsigned char level);
|
||||
void setSql(unsigned char level);
|
||||
void setMicGain(unsigned char);
|
||||
void setCompLevel(unsigned char);
|
||||
void setTxPower(unsigned char);
|
||||
void setMonitorLevel(unsigned char);
|
||||
void setVoxGain(unsigned char);
|
||||
void setAntiVoxGain(unsigned char);
|
||||
void setSpectrumRefLevel(int);
|
||||
|
||||
|
||||
public slots:
|
||||
virtual void incomingConnection(qintptr socketDescriptor);
|
||||
void receiveRigCaps(rigCapabilities caps);
|
||||
|
|
31
wfmain.cpp
31
wfmain.cpp
|
@ -296,6 +296,7 @@ void wfmain::rigConnections()
|
|||
connect(this, SIGNAL(getSpectrumRefLevel()), rig, SLOT(getSpectrumRefLevel()));
|
||||
connect(this, SIGNAL(getModInputLevel(rigInput)), rig, SLOT(getModInputLevel(rigInput)));
|
||||
|
||||
|
||||
// Levels: Set:
|
||||
connect(this, SIGNAL(setRfGain(unsigned char)), rig, SLOT(setRfGain(unsigned char)));
|
||||
connect(this, SIGNAL(setAfGain(unsigned char)), rig, SLOT(setAfGain(unsigned char)));
|
||||
|
@ -306,7 +307,7 @@ void wfmain::rigConnections()
|
|||
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(setModLevel(rigInput, unsigned char)), rig, SLOT(setModInputLevel(rigInput, unsigned char)));
|
||||
|
||||
// Levels: handle return on query:
|
||||
connect(rig, SIGNAL(haveRfGain(unsigned char)), this, SLOT(receiveRfGain(unsigned char)));
|
||||
|
@ -403,6 +404,20 @@ void wfmain::makeRig()
|
|||
connect(rigCtl, SIGNAL(setMode(unsigned char, unsigned char)), rig, SLOT(setMode(unsigned char, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setDataMode(bool, unsigned char)), rig, SLOT(setDataMode(bool, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setPTT(bool)), rig, SLOT(setPTT(bool)));
|
||||
connect(rigCtl, SIGNAL(sendPowerOn()), rig, SLOT(powerOn()));
|
||||
connect(rigCtl, SIGNAL(sendPowerOff()), rig, SLOT(powerOff()));
|
||||
|
||||
// Levels: Set:
|
||||
connect(rigCtl, SIGNAL(setRfGain(unsigned char)), rig, SLOT(setRfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAfGain(unsigned char)), rig, SLOT(setAfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSql(unsigned char)), rig, SLOT(setSquelch(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setTxPower(unsigned char)), rig, SLOT(setTxPower(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMicGain(unsigned char)), rig, SLOT(setMicGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMonitorLevel(unsigned char)), rig, SLOT(setMonitorLevel(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int)));
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5267,6 +5282,20 @@ void wfmain::on_enableRigctldChk_clicked(bool checked)
|
|||
connect(rigCtl, SIGNAL(setMode(unsigned char, unsigned char)), rig, SLOT(setMode(unsigned char, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setDataMode(bool, unsigned char)), rig, SLOT(setDataMode(bool, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setPTT(bool)), rig, SLOT(setPTT(bool)));
|
||||
connect(rigCtl, SIGNAL(sendPowerOn()), rig, SLOT(powerOn()));
|
||||
connect(rigCtl, SIGNAL(sendPowerOff()), rig, SLOT(powerOff()));
|
||||
|
||||
// Levels: Set:
|
||||
connect(rigCtl, SIGNAL(setRfGain(unsigned char)), rig, SLOT(setRfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAfGain(unsigned char)), rig, SLOT(setAfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSql(unsigned char)), rig, SLOT(setSquelch(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setTxPower(unsigned char)), rig, SLOT(setTxPower(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMicGain(unsigned char)), rig, SLOT(setMicGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMonitorLevel(unsigned char)), rig, SLOT(setMonitorLevel(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int)));
|
||||
|
||||
emit sendRigCaps(rigCaps);
|
||||
emit requestRigState();
|
||||
}
|
||||
|
|
Ładowanie…
Reference in New Issue