diff --git a/NEWS b/NEWS index c32b5d413..234db18b0 100644 --- a/NEWS +++ b/NEWS @@ -18,6 +18,7 @@ Version 4.6 Version 4.5.1 * 2022-XX-XX + * Fix AGC Level dumpcaps on most rigs * Fix rig_send_raw to return bytes read, fill buffer, and also work with fixed length response/null terminator * Change all Kenwood rigs to 500ms serial timeout * Fix dumpcaps filter printout to only show declared filters diff --git a/rigs/kenwood/kenwood.c b/rigs/kenwood/kenwood.c index 8b4a8f9f5..96d07ce39 100644 --- a/rigs/kenwood/kenwood.c +++ b/rigs/kenwood/kenwood.c @@ -3191,11 +3191,6 @@ int kenwood_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) break; case RIG_LEVEL_AGC: - if (kenwood_val > 3) - { - kenwood_val = 3; /* 0.. 255 */ - } - SNPRINTF(levelbuf, sizeof(levelbuf), "GT%03d", 84 * kenwood_val); break; diff --git a/rigs/kenwood/kenwood.h b/rigs/kenwood/kenwood.h index 28687a08c..120259350 100644 --- a/rigs/kenwood/kenwood.h +++ b/rigs/kenwood/kenwood.h @@ -29,7 +29,7 @@ #include "misc.h" #include "idx_builtin.h" -#define BACKEND_VER "20221118" +#define BACKEND_VER "20221124" #define EOM_KEN ';' #define EOM_TH '\r' diff --git a/rigs/kenwood/ts480.c b/rigs/kenwood/ts480.c index 4fcc4981f..880221b1a 100644 --- a/rigs/kenwood/ts480.c +++ b/rigs/kenwood/ts480.c @@ -1284,6 +1284,8 @@ const struct rig_caps ts480_caps = .max_ifshift = Hz(0), .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + .agc_level_count = 3, + .agc_levels = { RIG_AGC_OFF, RIG_AGC_FAST, RIG_AGC_SLOW }, .rx_range_list1 = { {kHz(100), Hz(59999999), TS480_ALL_MODES, -1, -1, TS480_VFO}, diff --git a/rigs/kenwood/ts570.c b/rigs/kenwood/ts570.c index 48af93887..0d7414990 100644 --- a/rigs/kenwood/ts570.c +++ b/rigs/kenwood/ts570.c @@ -903,7 +903,7 @@ const struct rig_caps ts570s_caps = RIG_MODEL(RIG_MODEL_TS570S), .model_name = "TS-570S", .mfg_name = "Kenwood", - .version = BACKEND_VER ".1", + .version = BACKEND_VER ".2", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -943,6 +943,8 @@ const struct rig_caps ts570s_caps = .scan_ops = TS570_SCAN_OPS, .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + .agc_level_count = 2, + .agc_levels = { RIG_AGC_FAST, RIG_AGC_SLOW }, .bank_qty = 0, .chan_desc_sz = 0, diff --git a/rigs/kenwood/ts590.c b/rigs/kenwood/ts590.c index d82c53a44..8de2cd1e0 100644 --- a/rigs/kenwood/ts590.c +++ b/rigs/kenwood/ts590.c @@ -113,6 +113,8 @@ const struct rig_caps ts590_caps = .max_ifshift = Hz(0), .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + .agc_level_count = 4, + .agc_levels = { RIG_AGC_OFF, RIG_AGC_SLOW, RIG_AGC_FAST, RIG_AGC_ON }, .chan_list = { /* TBC */ diff --git a/rigs/kenwood/ts690.c b/rigs/kenwood/ts690.c index 914176efc..2dcdc6476 100644 --- a/rigs/kenwood/ts690.c +++ b/rigs/kenwood/ts690.c @@ -74,7 +74,7 @@ const struct rig_caps ts690s_caps = RIG_MODEL(RIG_MODEL_TS690S), .model_name = "TS-690S", .mfg_name = "Kenwood", - .version = BACKEND_VER ".0", + .version = BACKEND_VER ".1", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -110,6 +110,8 @@ const struct rig_caps ts690s_caps = .max_ifshift = Hz(0), .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + .agc_level_count = 3, + .agc_levels = { RIG_AGC_OFF, RIG_AGC_FAST, RIG_AGC_SLOW }, .bank_qty = 0, .chan_desc_sz = 0, .vfo_ops = TS690_VFO_OPS, diff --git a/rigs/kenwood/ts790.c b/rigs/kenwood/ts790.c index b46274f1d..f75180a92 100644 --- a/rigs/kenwood/ts790.c +++ b/rigs/kenwood/ts790.c @@ -110,6 +110,7 @@ const struct rig_caps ts790_caps = .max_ifshift = 0, .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + // No AGC levels .bank_qty = 0, .chan_desc_sz = 0, diff --git a/rigs/kenwood/ts850.c b/rigs/kenwood/ts850.c index 8c51b41cb..86080d4c4 100644 --- a/rigs/kenwood/ts850.c +++ b/rigs/kenwood/ts850.c @@ -143,6 +143,7 @@ const struct rig_caps ts850_caps = .vfo_ops = TS850_VFO_OPS, .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + // No AGC levels .bank_qty = 0, .chan_desc_sz = 3, .chan_list = { diff --git a/rigs/kenwood/ts870s.c b/rigs/kenwood/ts870s.c index 290f5741e..edf2f9c91 100644 --- a/rigs/kenwood/ts870s.c +++ b/rigs/kenwood/ts870s.c @@ -577,6 +577,8 @@ const struct rig_caps ts870s_caps = .max_ifshift = Hz(0), .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + // Has GT command but ranges from 000-005(Off) to 255 max + // Would take special processing .bank_qty = 0, .chan_desc_sz = 0, diff --git a/rigs/kenwood/ts890s.c b/rigs/kenwood/ts890s.c index ddd01cd42..e4350ee7b 100644 --- a/rigs/kenwood/ts890s.c +++ b/rigs/kenwood/ts890s.c @@ -241,7 +241,7 @@ const struct rig_caps ts890s_caps = RIG_MODEL(RIG_MODEL_TS890S), .model_name = "TS-890S", .mfg_name = "Kenwood", - .version = BACKEND_VER ".5", + .version = BACKEND_VER ".6", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -265,6 +265,8 @@ const struct rig_caps ts890s_caps = .max_ifshift = Hz(0), .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + .agc_level_count = 5, + .agc_levels = { RIG_AGC_OFF, RIG_AGC_SLOW, RIG_AGC_MEDIUM, RIG_AGC_FAST, RIG_AGC_ON }, .rx_range_list1 = { {kHz(100), Hz(59999999), TS890_ALL_MODES, -1, -1, TS890_VFO}, diff --git a/rigs/kenwood/ts930.c b/rigs/kenwood/ts930.c index a2ffb915d..adb795d5c 100644 --- a/rigs/kenwood/ts930.c +++ b/rigs/kenwood/ts930.c @@ -92,6 +92,7 @@ const struct rig_caps ts930_caps = .max_ifshift = Hz(0), .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + // AGC levels unknown .bank_qty = 0, .chan_desc_sz = 0, diff --git a/rigs/kenwood/ts940.c b/rigs/kenwood/ts940.c index 30dad244d..e9ba62dfa 100644 --- a/rigs/kenwood/ts940.c +++ b/rigs/kenwood/ts940.c @@ -114,6 +114,7 @@ const struct rig_caps ts940_caps = .vfo_ops = TS940_VFO_OPS, .scan_ops = TS940_SCAN_OPS, .transceive = RIG_TRN_RIG, + // Unknown AGC levels .bank_qty = 0, .chan_desc_sz = 0, diff --git a/rigs/kenwood/ts950.c b/rigs/kenwood/ts950.c index d1007b40c..b25695cda 100644 --- a/rigs/kenwood/ts950.c +++ b/rigs/kenwood/ts950.c @@ -109,6 +109,7 @@ const struct rig_caps ts950s_caps = .max_ifshift = Hz(0), .targetable_vfo = RIG_TARGETABLE_FREQ, .transceive = RIG_TRN_RIG, + // No AGC levels .bank_qty = 0, .chan_desc_sz = 0, diff --git a/rigs/kenwood/ts990s.c b/rigs/kenwood/ts990s.c index d7e8d3924..5500ce3e7 100644 --- a/rigs/kenwood/ts990s.c +++ b/rigs/kenwood/ts990s.c @@ -122,7 +122,7 @@ const struct rig_caps ts990s_caps = RIG_MODEL(RIG_MODEL_TS990S), .model_name = "TS-990S", .mfg_name = "Kenwood", - .version = BACKEND_VER ".2", + .version = BACKEND_VER ".3", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -160,6 +160,8 @@ const struct rig_caps ts990s_caps = .max_xit = Hz(9990), .targetable_vfo = RIG_TARGETABLE_FREQ | RIG_TARGETABLE_MODE, .transceive = RIG_TRN_RIG, + .agc_level_count = 5, + .agc_levels = { RIG_AGC_OFF, RIG_AGC_SLOW, RIG_AGC_MEDIUM, RIG_AGC_FAST, RIG_AGC_ON }, .bank_qty = 0, .chan_desc_sz = 7,