diff --git a/rigs/kenwood/k3.c b/rigs/kenwood/k3.c index 34ffe5975..28bc75e18 100644 --- a/rigs/kenwood/k3.c +++ b/rigs/kenwood/k3.c @@ -1979,6 +1979,10 @@ int kx3_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) // manual says 0-255 as of Rev G5 but experiment says 0-60 snprintf(cmdbuf, sizeof(cmdbuf), "AG%03d", (int)(val.f * 60.0f)); return kenwood_transaction(rig, cmdbuf, NULL, 0); + case RIG_LEVEL_MICGAIN: + // manual says 0-255 as of Rev G5 but experiment says 0-99 + snprintf(cmdbuf, sizeof(cmdbuf), "MG%03d", (int)(val.f * 99.0f)); + return kenwood_transaction(rig, cmdbuf, NULL, 0); } return k3_set_level(rig, vfo, level, val); @@ -2005,6 +2009,12 @@ int kx3_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) val->f = (val->i - 190.0) / (250.0-190.0); return retval; + case RIG_LEVEL_MICGAIN: + retval = get_kenwood_level(rig, "MG", NULL, &val->i); + if (retval != RIG_OK) { return retval; } + val->f = val->i / 99.0; + return retval; + case RIG_LEVEL_RFPOWER_METER: { int tx_status = 0;