diff --git a/rigs/kenwood/k3.c b/rigs/kenwood/k3.c index 19fff8297..eb70d37c0 100644 --- a/rigs/kenwood/k3.c +++ b/rigs/kenwood/k3.c @@ -63,7 +63,8 @@ #define KX3_LEVEL_ALL (RIG_LEVEL_ATT|RIG_LEVEL_PREAMP|RIG_LEVEL_AGC|RIG_LEVEL_SQL|\ RIG_LEVEL_STRENGTH|RIG_LEVEL_RFPOWER|RIG_LEVEL_KEYSPD|\ RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_MICGAIN|RIG_LEVEL_COMP|\ - RIG_LEVEL_NR|RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_RAWSTR|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_RFPOWER_METER_WATTS) + RIG_LEVEL_NR|RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_RAWSTR|RIG_LEVEL_RFPOWER_METER|\ + RIG_LEVEL_RFPOWER_METER_WATTS|RIG_LEVEL_SWR) /* * Elecraft K3/K3S extra level definitions @@ -2313,6 +2314,18 @@ int k3_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) break; + case RIG_LEVEL_SWR: + retval = kenwood_safe_transaction(rig, "SW", levelbuf, sizeof(levelbuf), 5); + + if (retval != RIG_OK) + { + return retval; + } + + sscanf(levelbuf + 2, "%d", &val->i); + val->f = (float) val->i / 10.0f; + break; + default: return kenwood_get_level(rig, vfo, level, val); } diff --git a/rigs/kenwood/level_gran_elecraft.h b/rigs/kenwood/level_gran_elecraft.h index ad36095ca..4e3a24498 100644 --- a/rigs/kenwood/level_gran_elecraft.h +++ b/rigs/kenwood/level_gran_elecraft.h @@ -27,4 +27,5 @@ [LVL_COMP] = { .min = { .f = .0 }, .max = { .f = 1 }, .step = { .f = 1.0f/100.0f } }, [LVL_VOXGAIN] = { .min = { .f = .0 }, .max = { .f = 1 }, .step = { .f = 1.0f/100.0f } }, [LVL_ALC] = { .min = { .f = .0 }, .max = { .f = 1 }, .step = { .f = 1.0f/100.0f } }, + [LVL_SWR] = { .min = { .f = 1.0 }, .max = { .f = 99.9 }, .step = { .f = 1.0f/10.0f } },