mirror of
https://github.com/Hamlib/Hamlib.git
synced 2024-09-22 10:57:21 +00:00
Update kenwood rigs for new get_kenwood_level
This commit is contained in:
parent
eb40d8811c
commit
3cbdd3c387
@ -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);
|
||||
|
||||
|
@ -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; }
|
||||
|
@ -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; }
|
||||
|
@ -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)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user