Update kenwood rigs for new get_kenwood_level

pull/412/head
Michael Black W9MDB 2020-09-30 14:47:25 -05:00
rodzic eb40d8811c
commit 3cbdd3c387
4 zmienionych plików z 34 dodań i 10 usunięć

Wyświetl plik

@ -51,7 +51,7 @@
/* PowerSDR differences */
#define POWERSDR_FUNC_ALL (RIG_FUNC_VOX|RIG_FUNC_SQL|RIG_FUNC_NB|RIG_FUNC_ANF|RIG_FUNC_MUTE|RIG_FUNC_RIT|RIG_FUNC_XIT)
#define POWERSDR_LEVEL_ALL (RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW|RIG_LEVEL_KEYSPD|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_MICGAIN|RIG_LEVEL_VOXGAIN|RIG_LEVEL_SQL|RIG_LEVEL_AF|RIG_LEVEL_AGC)
#define POWERSDR_LEVEL_ALL (RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW|RIG_LEVEL_KEYSPD|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_MICGAIN|RIG_LEVEL_VOXGAIN|RIG_LEVEL_SQL|RIG_LEVEL_AF|RIG_LEVEL_AGC|RIG_LEVEL_RF)
static rmode_t flex_mode_table[KENWOOD_MODE_TABLE_MAX] =
@ -739,6 +739,12 @@ int powersdr_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
ans = 3;
break;
case RIG_LEVEL_RF:
cmd = "ZZAR";
len = 4;
ans = 4;
break;
case RIG_LEVEL_RFPOWER_METER:
cmd = "ZZRM5";
len = 5;
@ -778,6 +784,7 @@ int powersdr_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
switch (level)
{
int i;
case RIG_LEVEL_AGC:
n = sscanf(lvlbuf + len, "%d", &val->i);
@ -804,6 +811,23 @@ int powersdr_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
val->f /= 100;
break;
case RIG_LEVEL_RF:
n = sscanf(lvlbuf + len, "%d", &i);
val->i = i;
rig_debug(RIG_DEBUG_TRACE, "%s: lvlbuf+len=%s, len=%d, i=%d, val->i=%d\n", __func__, lvlbuf+len, len, i, val->i);
if (n != 1)
{
rig_debug(RIG_DEBUG_ERR, "%s: Error parsing value from lvlbuf='%s'\n",
__func__, lvlbuf);
return -RIG_EPROTO;
}
val->f = (val->i + 20) / (120 - -20);
rig_debug(RIG_DEBUG_TRACE, "%s: lvlbuf=%s, val->i=%d, val->f=%g\n", __func__, lvlbuf, i, val->f);
break;
case RIG_LEVEL_MICGAIN:
n = sscanf(lvlbuf + len, "%f", &val->f);

Wyświetl plik

@ -1066,7 +1066,7 @@ int ts2000_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
case RIG_LEVEL_AGC: /* FIX ME: ts2000 returns 0 -20 for AGC */
ret = get_kenwood_level(rig, "GT", val);
ret = get_kenwood_level(rig, "GT", val, NULL);
agclevel = 255.0 * val->f;
if (agclevel == 0) { val->i = 0; }

Wyświetl plik

@ -481,19 +481,19 @@ static int ts870s_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
case RIG_LEVEL_AF:
return get_kenwood_level(rig, "AG", val);
return get_kenwood_level(rig, "AG", val, NULL);
case RIG_LEVEL_RF:
return get_kenwood_level(rig, "RG", val);
return get_kenwood_level(rig, "RG", val, NULL);
case RIG_LEVEL_SQL:
return get_kenwood_level(rig, "SQ", val);
return get_kenwood_level(rig, "SQ", val, NULL);
case RIG_LEVEL_MICGAIN:
return get_kenwood_level(rig, "MG", val);
return get_kenwood_level(rig, "MG", val, NULL);
case RIG_LEVEL_AGC:
ret = get_kenwood_level(rig, "GT", val);
ret = get_kenwood_level(rig, "GT", val, NULL);
agclevel = 255 * val->f;
if (agclevel == 0) { val->i = 0; }

Wyświetl plik

@ -561,7 +561,7 @@ int ts990s_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
break;
case RIG_LEVEL_MICGAIN:
retval = get_kenwood_level(rig, "MG", val);
retval = get_kenwood_level(rig, "MG", val, NULL);
if (retval != RIG_OK)
{
@ -670,7 +670,7 @@ int ts990s_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
break;
case RIG_LEVEL_VOXGAIN:
retval = get_kenwood_level(rig, "VG00", val);
retval = get_kenwood_level(rig, "VG00", &val->f, NULL);
if (retval != RIG_OK)
{
@ -680,7 +680,7 @@ int ts990s_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
break;
case RIG_LEVEL_ANTIVOX:
retval = get_kenwood_level(rig, "VG00", val);
retval = get_kenwood_level(rig, "VG00", &val->f, NULL);
if (retval != RIG_OK)
{