Add RIG_LEVEL_USB_AF_INPUT

Add RIG_LEVEL_USB_AF and RIG_LEVEL_USB_AF_INPUT to ts590.c
More rigs to be updated for this
pull/1404/head
Mike Black W9MDB 2023-10-18 16:47:29 -05:00
rodzic 914c4f4d2a
commit f5f8694a70
5 zmienionych plików z 44 dodań i 6 usunięć

Wyświetl plik

@ -1076,6 +1076,7 @@ typedef uint64_t rig_level_e;
#define RIG_LEVEL_TEMP_METER CONSTANT_64BIT_FLAG(48) /*!< \c TEMP_METER -- arg float (C, centigrade) */
#define RIG_LEVEL_BAND_SELECT CONSTANT_64BIT_FLAG(49) /*!< \c BAND_SELECT -- arg enum BAND_ENUM */
#define RIG_LEVEL_USB_AF CONSTANT_64BIT_FLAG(50) /*!< \c ACC/USB AF output level */
#define RIG_LEVEL_USB_AF_INPUT CONSTANT_64BIT_FLAG(51) /*!< \c ACC/USB AF output level */
#define RIG_LEVEL_AGC_TIME CONSTANT_64BIT_FLAG(51) /*!< \c AGC_TIME -- in seconds, rig dependent */
#define RIG_LEVEL_52 CONSTANT_64BIT_FLAG(52) /*!< \c Future use */
#define RIG_LEVEL_53 CONSTANT_64BIT_FLAG(53) /*!< \c Future use */

Wyświetl plik

@ -40,4 +40,6 @@
[LVL_VOXGAIN] = { .min = { .f = .0 }, .max = { .f = 1 }, .step = { .f = 1.0f/100.0f } },
[LVL_ANTIVOX] = { .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_USB_AF] = { .min = { .f = 0 }, .max = { .f = 1.0 }, .step = { .f = 1.0f/9.0f } },
[LVL_USB_AF_INPUT] = { .min = { .f = 0 }, .max = { .f = 1.0 }, .step = { .f = 1.0f/9.0f } },

Wyświetl plik

@ -40,11 +40,11 @@
#define TS590_LEVEL_GET (RIG_LEVEL_RFPOWER|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_SQL|RIG_LEVEL_AGC|RIG_LEVEL_MICGAIN|RIG_LEVEL_STRENGTH|RIG_LEVEL_KEYSPD|RIG_LEVEL_CWPITCH| \
RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB|RIG_LEVEL_NR|RIG_LEVEL_PREAMP|RIG_LEVEL_COMP|RIG_LEVEL_ATT|RIG_LEVEL_VOXDELAY|RIG_LEVEL_VOXGAIN|RIG_LEVEL_BKIN_DLYMS| \
RIG_LEVEL_SWR|RIG_LEVEL_COMP_METER|RIG_LEVEL_ALC|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW)
RIG_LEVEL_SWR|RIG_LEVEL_COMP_METER|RIG_LEVEL_ALC|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW|RIG_LEVEL_USB_AF|RIG_LEVEL_USB_AF_INPUT)
#define TS590_LEVEL_SET (RIG_LEVEL_RFPOWER|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_SQL|RIG_LEVEL_AGC|RIG_LEVEL_MICGAIN|RIG_LEVEL_KEYSPD|RIG_LEVEL_CWPITCH| \
RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB|RIG_LEVEL_NR|RIG_LEVEL_PREAMP|RIG_LEVEL_COMP|RIG_LEVEL_ATT|RIG_LEVEL_VOXDELAY|RIG_LEVEL_VOXGAIN|RIG_LEVEL_BKIN_DLYMS| \
RIG_LEVEL_METER|RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW)
RIG_LEVEL_METER|RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW|RIG_LEVEL_USB_AF|RIG_LEVEL_USB_AF_INPUT)
#define TS590_FUNC_ALL (RIG_FUNC_NB|RIG_FUNC_COMP|RIG_FUNC_VOX|RIG_FUNC_NR|RIG_FUNC_NR|RIG_FUNC_BC|RIG_FUNC_BC2|RIG_FUNC_RIT|RIG_FUNC_XIT| \
RIG_FUNC_TUNER|RIG_FUNC_MON|RIG_FUNC_FBKIN|RIG_FUNC_LOCK)
@ -94,6 +94,8 @@
#define TOK_LEVEL_TX_SIDETONE_VOLUME TOKEN_BACKEND(108)
#define TOK_LEVEL_ACC2_AUDIO_INPUT_LEVEL TOKEN_BACKEND(109)
#define TOK_LEVEL_ACC2_AUDIO_OUTPUT_LEVEL TOKEN_BACKEND(110)
// these two USB_AUDIO items are being kept for backwards compatibility
// replaced by RIG_LEVEL_USB_AF and RIG_LEVEL_USB_AF_INPUT
#define TOK_LEVEL_USB_AUDIO_INPUT_LEVEL TOKEN_BACKEND(113)
#define TOK_LEVEL_USB_AUDIO_OUTPUT_LEVEL TOKEN_BACKEND(114)
#define TOK_LEVEL_DSP_TX_SSB_AM_LOW_CUT_FILTER TOKEN_BACKEND(115)
@ -644,13 +646,23 @@ static int ts590_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
struct kenwood_priv_data *priv = rig->state.priv;
char ackbuf[50];
size_t ack_len, ack_len_expected;
int levelint;
int levelint = 0;
int retval;
ENTERFUNC;
switch (level)
{
case RIG_LEVEL_USB_AF:
retval = ts590_get_ex_menu(rig, 65, 1, &levelint);
val->f = levelint / 9.0;
return retval;
case RIG_LEVEL_USB_AF_INPUT:
retval = ts590_get_ex_menu(rig, 64, 1, &levelint);
val->f = levelint / 9.0;
return retval;
case RIG_LEVEL_AF:
return kenwood_get_level(rig, vfo, level, val);
@ -1263,7 +1275,17 @@ static int ts590_set_ext_level(RIG *rig, vfo_t vfo, token_t token, value_t val)
break;
case TOK_LEVEL_USB_AUDIO_INPUT_LEVEL:
case RIG_LEVEL_USB_AF_INPUT: // this one expect 0-1.0 levels
if (val.f > 1.0)
{
rig_debug(RIG_DEBUG_WARN, "%s: Clipping USB AF input level to 1.0\n", __func__);
val.f = 9;
}
else
{
val.f = val.f * 9;
}
case TOK_LEVEL_USB_AUDIO_INPUT_LEVEL: // keep for backwards compatibility
if (val.f < 0 || val.f > 9)
{
RETURNFUNC(-RIG_EINVAL);
@ -1280,7 +1302,17 @@ static int ts590_set_ext_level(RIG *rig, vfo_t vfo, token_t token, value_t val)
break;
case TOK_LEVEL_USB_AUDIO_OUTPUT_LEVEL:
case RIG_LEVEL_USB_AF:
if (val.f > 1.0)
{
rig_debug(RIG_DEBUG_WARN, "%s: Clipping USB AF output level to 1.0\n", __func__);
val.f = 9;
}
else
{
val.f = val.f * 9;
}
case TOK_LEVEL_USB_AUDIO_OUTPUT_LEVEL: // keep for backwards compatibility
if (val.f < 0 || val.f > 9)
{
RETURNFUNC(-RIG_EINVAL);
@ -1562,7 +1594,7 @@ const struct rig_caps ts590_caps =
RIG_MODEL(RIG_MODEL_TS590S),
.model_name = "TS-590S",
.mfg_name = "Kenwood",
.version = BACKEND_VER ".7",
.version = BACKEND_VER ".8",
.copyright = "LGPL",
.status = RIG_STATUS_STABLE,
.rig_type = RIG_TYPE_TRANSCEIVER,

Wyświetl plik

@ -139,6 +139,8 @@
#define LVL_SWR setting2idx_builtin(RIG_LEVEL_SWR)
#define LVL_ALC setting2idx_builtin(RIG_LEVEL_ALC)
#define LVL_STRENGTH setting2idx_builtin(RIG_LEVEL_STRENGTH)
#define LVL_USB_AF setting2idx_builtin(RIG_LEVEL_USB_AF)
#define LVL_USB_AF_INPUT setting2idx_builtin(RIG_LEVEL_USB_AF_INPUT)
/*#define LVL_BWC setting2idx_builtin(RIG_LEVEL_BWC)*/
#define LVL_RFPOWER_METER setting2idx_builtin(RIG_LEVEL_RFPOWER_METER)

Wyświetl plik

@ -991,6 +991,7 @@ static const struct
{ RIG_LEVEL_TEMP_METER, "TEMP_METER" },
{ RIG_LEVEL_BAND_SELECT, "BAND_SELECT" },
{ RIG_LEVEL_USB_AF, "USB_AF" },
{ RIG_LEVEL_USB_AF_INPUT, "USB_AF_INPUT" },
{ RIG_LEVEL_AGC_TIME, "AGC_TIME" },
{ RIG_LEVEL_NONE, "" },
};