Use new FLRig get_SWR method if available -- otherwise use old method

pull/1426/head
Mike Black W9MDB 2023-11-10 11:55:30 -06:00
rodzic 5059ec8cd6
commit 774e60895c
2 zmienionych plików z 18 dodań i 5 usunięć

Wyświetl plik

@ -139,7 +139,7 @@ const struct rig_caps flrig_caps =
RIG_MODEL(RIG_MODEL_FLRIG),
.model_name = "FLRig",
.mfg_name = "FLRig",
.version = "20231108.0",
.version = "20231110.0",
.copyright = "LGPL",
.status = RIG_STATUS_STABLE,
.rig_type = RIG_TYPE_TRANSCEIVER,
@ -2171,7 +2171,8 @@ static int flrig_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
case RIG_LEVEL_STRENGTH: cmd = "rig.get_smeter"; break;
case RIG_LEVEL_SWR: cmd = "rig.get_swrmeter"; break;
case RIG_LEVEL_SWR: cmd = "rig.get_SWR"; break;
//case RIG_LEVEL_SWR: cmd = "rig.get_swrmeter"; break;
case RIG_LEVEL_RFPOWER: cmd = "rig.get_power"; break;
@ -2185,6 +2186,12 @@ static int flrig_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
retval = flrig_transaction(rig, cmd, NULL, value, sizeof(value));
if (retval == RIG_ENAVAIL && strcmp(cmd,"rig.get_SWR")==0)
{
cmd = "rig.get_swrmeter"; // revert to old flrig method
retval = flrig_transaction(rig, cmd, NULL, value, sizeof(value));
}
if (retval != RIG_OK)
{
rig_debug(RIG_DEBUG_ERR, "%s: flrig_transaction failed retval=%s\n", __func__,

Wyświetl plik

@ -138,8 +138,14 @@ int main(int argc, char *argv[])
if (n <= 0) { perror("RM5"); }
}
else if (strcmp(buf,"MR118;") == 0)
{
pbuf = "?;";
n = write(fd, pbuf, strlen(pbuf));
if (n <= 0) { perror("MR118"); }
}
if (strcmp(buf, "AN0;") == 0)
else if (strcmp(buf, "AN0;") == 0)
{
printf("%s\n", buf);
hl_usleep(50 * 1000);
@ -161,7 +167,7 @@ int main(int argc, char *argv[])
}
else if (strcmp(buf, "FA;") == 0)
{
SNPRINTF(buf, sizeof(buf), "FA%08.0f;", freqA);
SNPRINTF(buf, sizeof(buf), "FA%09.0f;", freqA);
n = write(fd, buf, strlen(buf));
}
else if (strncmp(buf, "FA", 2) == 0)
@ -170,7 +176,7 @@ int main(int argc, char *argv[])
}
else if (strcmp(buf, "FB;") == 0)
{
SNPRINTF(buf, sizeof(buf), "FB%08.0f;", freqB);
SNPRINTF(buf, sizeof(buf), "FB%09.0f;", freqB);
n = write(fd, buf, strlen(buf));
}
else if (strncmp(buf, "FB", 2) == 0)