From 236caa0d726becfbd2ac8263b27a653d7890c9f9 Mon Sep 17 00:00:00 2001 From: Juuso Lehtinen Date: Mon, 31 Jan 2022 22:23:30 +0200 Subject: [PATCH] Add get & set RIG_LEVEL_NB for Yaesu rigs. Tested with FT-991A Same values applies to FTDX10D, FTDX101MP, FT991A, FTDX101D, FT891 --- rigs/yaesu/ft891.h | 2 +- rigs/yaesu/ft991.h | 2 +- rigs/yaesu/ftdx10.h | 2 +- rigs/yaesu/ftdx101.h | 2 +- rigs/yaesu/newcat.c | 35 +++++++++++++++++++++++++++++++++++ 5 files changed, 39 insertions(+), 4 deletions(-) diff --git a/rigs/yaesu/ft891.h b/rigs/yaesu/ft891.h index e53d4bf1e..58c3c294f 100644 --- a/rigs/yaesu/ft891.h +++ b/rigs/yaesu/ft891.h @@ -55,7 +55,7 @@ RIG_LEVEL_KEYSPD|RIG_LEVEL_AF|RIG_LEVEL_AGC|\ RIG_LEVEL_METER|RIG_LEVEL_BKINDL|RIG_LEVEL_SQL|\ RIG_LEVEL_VOXGAIN|RIG_LEVEL_VOXDELAY|RIG_LEVEL_COMP|\ - RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NOTCHF|\ + RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NB|RIG_LEVEL_NOTCHF|\ RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_RFPOWER_METER_WATTS|\ RIG_LEVEL_COMP_METER|RIG_LEVEL_ID_METER|\ RIG_LEVEL_BAND_SELECT) diff --git a/rigs/yaesu/ft991.h b/rigs/yaesu/ft991.h index 891341108..302300c17 100644 --- a/rigs/yaesu/ft991.h +++ b/rigs/yaesu/ft991.h @@ -57,7 +57,7 @@ RIG_LEVEL_KEYSPD|RIG_LEVEL_AF|RIG_LEVEL_AGC|\ RIG_LEVEL_METER|RIG_LEVEL_BKINDL|RIG_LEVEL_SQL|\ RIG_LEVEL_VOXGAIN|RIG_LEVEL_VOXDELAY|RIG_LEVEL_COMP|\ - RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NOTCHF|\ + RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NB|RIG_LEVEL_NOTCHF|\ RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_RFPOWER_METER_WATTS|\ RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|\ RIG_LEVEL_BAND_SELECT) diff --git a/rigs/yaesu/ftdx10.h b/rigs/yaesu/ftdx10.h index e687e77e0..3b59e5c1d 100644 --- a/rigs/yaesu/ftdx10.h +++ b/rigs/yaesu/ftdx10.h @@ -58,7 +58,7 @@ RIG_LEVEL_KEYSPD|RIG_LEVEL_AF|RIG_LEVEL_AGC|\ RIG_LEVEL_METER|RIG_LEVEL_BKINDL|RIG_LEVEL_SQL|\ RIG_LEVEL_VOXGAIN|RIG_LEVEL_VOXDELAY|RIG_LEVEL_COMP|\ - RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NOTCHF|\ + RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NB|RIG_LEVEL_NOTCHF|\ RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_RFPOWER_METER_WATTS|\ RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|\ RIG_LEVEL_BAND_SELECT) diff --git a/rigs/yaesu/ftdx101.h b/rigs/yaesu/ftdx101.h index a6d8089f1..e721f2155 100644 --- a/rigs/yaesu/ftdx101.h +++ b/rigs/yaesu/ftdx101.h @@ -57,7 +57,7 @@ RIG_LEVEL_KEYSPD|RIG_LEVEL_AF|RIG_LEVEL_AGC|\ RIG_LEVEL_METER|RIG_LEVEL_BKINDL|RIG_LEVEL_SQL|\ RIG_LEVEL_VOXGAIN|RIG_LEVEL_VOXDELAY|RIG_LEVEL_COMP|\ - RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NOTCHF|\ + RIG_LEVEL_ANTIVOX|RIG_LEVEL_NR|RIG_LEVEL_NB|RIG_LEVEL_NOTCHF|\ RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_RFPOWER_METER_WATTS|\ RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|RIG_LEVEL_TEMP_METER|\ RIG_LEVEL_BAND_SELECT) diff --git a/rigs/yaesu/newcat.c b/rigs/yaesu/newcat.c index e03cbaabc..faee36ee1 100644 --- a/rigs/yaesu/newcat.c +++ b/rigs/yaesu/newcat.c @@ -4382,6 +4382,28 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) } break; + case RIG_LEVEL_NB: + if (!newcat_valid_command(rig, "NL")) + { + RETURNFUNC(-RIG_ENAVAIL); + } + + fpf = newcat_scale_float(10, val.f); + + if (fpf < 0) + { + fpf = 0; + } + + if (fpf > 10) + { + fpf = 10; + } + + SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "NL00%02d%c", fpf, cat_term); + + break; + default: RETURNFUNC(-RIG_EINVAL); } @@ -4648,6 +4670,15 @@ int newcat_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "VG%c", cat_term); break; + case RIG_LEVEL_NB: + if (!newcat_valid_command(rig, "NL")) + { + RETURNFUNC(-RIG_ENAVAIL); + } + + SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "NL0%c", cat_term); + break; + /* * Read only levels */ @@ -5409,6 +5440,10 @@ int newcat_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) val->f = (float)atoi(retlvl) / scale; break; + case RIG_LEVEL_NB: + val->f = (float)(atoi(retlvl) / 10.); + break; + default: RETURNFUNC(-RIG_EINVAL); }