diff --git a/rigs/yaesu/ft817.c b/rigs/yaesu/ft817.c index 67f830347..e190d5a77 100644 --- a/rigs/yaesu/ft817.c +++ b/rigs/yaesu/ft817.c @@ -295,7 +295,7 @@ const struct rig_caps ft817_caps = RIG_MODEL(RIG_MODEL_FT817), .model_name = "FT-817", .mfg_name = "Yaesu", - .version = "20220402.0", + .version = "20220407.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -313,7 +313,7 @@ const struct rig_caps ft817_caps = .timeout = FT817_TIMEOUT, .retry = 5, .has_get_func = RIG_FUNC_NONE, - .has_set_func = RIG_FUNC_LOCK | RIG_FUNC_TONE | RIG_FUNC_TSQL | RIG_FUNC_RIT, + .has_set_func = RIG_FUNC_LOCK | RIG_FUNC_TONE | RIG_FUNC_TSQL | RIG_FUNC_CSQL | RIG_FUNC_RIT, .has_get_level = RIG_LEVEL_STRENGTH | RIG_LEVEL_RAWSTR | RIG_LEVEL_RFPOWER | RIG_LEVEL_ALC | RIG_LEVEL_SWR, @@ -1612,6 +1612,16 @@ static int ft817_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) return ft817_send_cmd(rig, FT817_NATIVE_CAT_SET_CTCSS_DCS_OFF); } + case RIG_FUNC_CSQL: + if (status) + { + return ft817_send_cmd(rig, FT817_NATIVE_CAT_SET_DCS_ON); + } + else + { + return ft817_send_cmd(rig, FT817_NATIVE_CAT_SET_CTCSS_DCS_OFF); + } + case RIG_FUNC_RIT: if (status) { diff --git a/rigs/yaesu/ft857.c b/rigs/yaesu/ft857.c index 274d3eea8..4c14255ba 100644 --- a/rigs/yaesu/ft857.c +++ b/rigs/yaesu/ft857.c @@ -248,7 +248,7 @@ const struct rig_caps ft857_caps = RIG_MODEL(RIG_MODEL_FT857), .model_name = "FT-857", .mfg_name = "Yaesu", - .version = "20220404.0", + .version = "20220407.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -266,7 +266,7 @@ const struct rig_caps ft857_caps = .timeout = FT857_TIMEOUT, .retry = 0, .has_get_func = RIG_FUNC_NONE, - .has_set_func = RIG_FUNC_LOCK | RIG_FUNC_TONE | RIG_FUNC_TSQL | RIG_FUNC_RIT, + .has_set_func = RIG_FUNC_LOCK | RIG_FUNC_TONE | RIG_FUNC_TSQL | RIG_FUNC_CSQL | RIG_FUNC_RIT, .has_get_level = RIG_LEVEL_STRENGTH | RIG_LEVEL_RFPOWER, .has_set_level = RIG_LEVEL_BAND_SELECT, .has_get_parm = RIG_PARM_NONE, @@ -1148,8 +1148,18 @@ int ft857_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) { return ft857_send_cmd(rig, FT857_NATIVE_CAT_SET_CTCSS_DCS_OFF); } + + case RIG_FUNC_CSQL: + if (status) + { + return ft857_send_cmd(rig, FT857_NATIVE_CAT_SET_DCS_ON); + } + else + { + return ft857_send_cmd(rig, FT857_NATIVE_CAT_SET_CTCSS_DCS_OFF); + } - case RIG_FUNC_RIT: + case RIG_FUNC_RIT: if (status) { return ft857_send_cmd(rig, FT857_NATIVE_CAT_CLAR_ON); @@ -1158,9 +1168,8 @@ int ft857_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) { return ft857_send_cmd(rig, FT857_NATIVE_CAT_CLAR_OFF); } - + #if 0 - case RIG_FUNC_CODE: /* this doesn't exist */ if (status) { @@ -1170,17 +1179,6 @@ int ft857_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) { return ft857_send_cmd(rig, FT857_NATIVE_CAT_SET_CTCSS_DCS_OFF); } - - case RIG_FUNC_DSQL: /* this doesn't exist */ - if (status) - { - return ft857_send_cmd(rig, FT857_NATIVE_CAT_SET_DCS_ON); - } - else - { - return ft857_send_cmd(rig, FT857_NATIVE_CAT_SET_CTCSS_DCS_OFF); - } - #endif default: diff --git a/rigs/yaesu/ft897.c b/rigs/yaesu/ft897.c index 43494cfc2..e89367b03 100644 --- a/rigs/yaesu/ft897.c +++ b/rigs/yaesu/ft897.c @@ -269,7 +269,7 @@ const struct rig_caps ft897_caps = .timeout = FT897_TIMEOUT, .retry = 0, .has_get_func = RIG_FUNC_NONE, - .has_set_func = RIG_FUNC_LOCK | RIG_FUNC_TONE | RIG_FUNC_TSQL | RIG_FUNC_RIT, + .has_set_func = RIG_FUNC_LOCK | RIG_FUNC_TONE | RIG_FUNC_TSQL | RIG_FUNC_CSQL | RIG_FUNC_RIT, .has_get_level = RIG_LEVEL_STRENGTH | RIG_LEVEL_RFPOWER | RIG_LEVEL_SWR | RIG_LEVEL_RAWSTR | RIG_LEVEL_ALC, .has_set_level = RIG_LEVEL_BAND_SELECT, .has_get_parm = RIG_PARM_NONE, @@ -395,7 +395,7 @@ const struct rig_caps ft897d_caps = RIG_MODEL(RIG_MODEL_FT897D), .model_name = "FT-897D", .mfg_name = "Yaesu", - .version = "20210103.0", + .version = "20220407.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -1315,6 +1315,16 @@ int ft897_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) { return ft897_send_cmd(rig, FT897_NATIVE_CAT_SET_CTCSS_DCS_OFF); } + + case RIG_FUNC_CSQL: + if (status) + { + return ft897_send_cmd(rig, FT897_NATIVE_CAT_SET_DCS_ON); + } + else + { + return ft897_send_cmd(rig, FT897_NATIVE_CAT_SET_CTCSS_DCS_OFF); + } case RIG_FUNC_RIT: if (status) @@ -1327,7 +1337,6 @@ int ft897_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) } #if 0 - case RIG_FUNC_CODE: /* this doesn't exist */ if (status) { @@ -1337,17 +1346,6 @@ int ft897_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) { return ft897_send_cmd(rig, FT897_NATIVE_CAT_SET_CTCSS_DCS_OFF); } - - case RIG_FUNC_DSQL: /* this doesn't exist */ - if (status) - { - return ft897_send_cmd(rig, FT897_NATIVE_CAT_SET_DCS_ON); - } - else - { - return ft897_send_cmd(rig, FT897_NATIVE_CAT_SET_CTCSS_DCS_OFF); - } - #endif default: diff --git a/rigs/yaesu/ft991.c b/rigs/yaesu/ft991.c index 1e7fb850f..611231016 100644 --- a/rigs/yaesu/ft991.c +++ b/rigs/yaesu/ft991.c @@ -207,9 +207,9 @@ const struct rig_caps ft991_caps = .tx_range_list1 = { {MHz(1.8), MHz(54), FT991_OTHER_TX_MODES, W(5), W(100), FT991_VFO_ALL, FT991_ANTS, "Operating"}, {MHz(1.8), MHz(54), FT991_AM_TX_MODES, W(2), W(25), FT991_VFO_ALL, FT991_ANTS, "Operating"}, /* AM class */ - {MHz(144), MHz(148), FT991_OTHER_TX_MODES, W(5), W(100), FT991_VFO_ALL, FT991_ANTS, "Operating"}, + {MHz(144), MHz(148), FT991_OTHER_TX_MODES, W(5), W(50), FT991_VFO_ALL, FT991_ANTS, "Operating"}, {MHz(144), MHz(148), FT991_AM_TX_MODES, W(2), W(25), FT991_VFO_ALL, FT991_ANTS, "Operating"}, /* AM class */ - {MHz(430), MHz(450), FT991_OTHER_TX_MODES, W(5), W(100), FT991_VFO_ALL, FT991_ANTS, "Operating"}, + {MHz(430), MHz(450), FT991_OTHER_TX_MODES, W(5), W(50), FT991_VFO_ALL, FT991_ANTS, "Operating"}, {MHz(430), MHz(450), FT991_AM_TX_MODES, W(2), W(25), FT991_VFO_ALL, FT991_ANTS, "Operating"}, /* AM class */ RIG_FRNG_END, }, diff --git a/rigs/yaesu/ft991.h b/rigs/yaesu/ft991.h index ec126988b..92e5c9887 100644 --- a/rigs/yaesu/ft991.h +++ b/rigs/yaesu/ft991.h @@ -61,7 +61,7 @@ RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|\ RIG_LEVEL_BAND_SELECT) -#define FT991_FUNCS (RIG_FUNC_TONE|RIG_FUNC_TSQL|RIG_FUNC_LOCK|\ +#define FT991_FUNCS (RIG_FUNC_TONE|RIG_FUNC_TSQL|RIG_FUNC_CSQL|RIG_FUNC_LOCK|\ RIG_FUNC_MON|RIG_FUNC_NB|RIG_FUNC_NR|RIG_FUNC_VOX|\ RIG_FUNC_FBKIN|RIG_FUNC_COMP|RIG_FUNC_ANF|RIG_FUNC_MN|\ RIG_FUNC_RIT|RIG_FUNC_XIT|\ diff --git a/rigs/yaesu/newcat.c b/rigs/yaesu/newcat.c index dfbffebb1..fceb51fc5 100644 --- a/rigs/yaesu/newcat.c +++ b/rigs/yaesu/newcat.c @@ -5647,6 +5647,22 @@ int newcat_set_func(RIG *rig, vfo_t vfo, setting_t func, int status) break; + case RIG_FUNC_CSQL: + if (!newcat_valid_command(rig, "CT")) + { + RETURNFUNC(-RIG_ENAVAIL); + } + + SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "CT0%d%c", status ? 3 : 0, + cat_term); + + if (rig->caps->targetable_vfo & RIG_TARGETABLE_TONE) + { + priv->cmd_str[2] = main_sub_vfo; + } + + break; + case RIG_FUNC_LOCK: if (!newcat_valid_command(rig, "LK")) { @@ -5972,6 +5988,21 @@ int newcat_get_func(RIG *rig, vfo_t vfo, setting_t func, int *status) } break; + + case RIG_FUNC_CSQL: + if (!newcat_valid_command(rig, "CT")) + { + RETURNFUNC(-RIG_ENAVAIL); + } + + SNPRINTF(priv->cmd_str, sizeof(priv->cmd_str), "CT0%c", cat_term); + + if (rig->caps->targetable_vfo & RIG_TARGETABLE_TONE) + { + priv->cmd_str[2] = main_sub_vfo; + } + + break; case RIG_FUNC_LOCK: if (!newcat_valid_command(rig, "LK")) @@ -6176,6 +6207,10 @@ int newcat_get_func(RIG *rig, vfo_t vfo, setting_t func, int *status) case RIG_FUNC_TSQL: *status = (retfunc[0] == '1') ? 1 : 0; break; + + case RIG_FUNC_CSQL: + *status = (retfunc[0] == '3') ? 1 : 0; + break; case RIG_FUNC_TUNER: *status = (retfunc[2] == '1') ? 1 : 0; diff --git a/rigs/yaesu/newcat.h b/rigs/yaesu/newcat.h index 642a8eddd..bcff8c6cd 100644 --- a/rigs/yaesu/newcat.h +++ b/rigs/yaesu/newcat.h @@ -50,7 +50,7 @@ typedef char ncboolean; /* shared function version */ -#define NEWCAT_VER "20220331" +#define NEWCAT_VER "20220408" /* Hopefully large enough for future use, 128 chars plus '\0' */ #define NEWCAT_DATA_LEN 129