From 39670273c1ca3ebf59dc6f37c3eb810e9f2eb160 Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Fri, 10 Jul 2020 17:02:16 -0500 Subject: [PATCH 1/9] FT-817/818 doing dual reads causes vfo tuning to return -RIG_EIO So we will ignore the retry errors as the read normally works but we need to allow for VFO tuning https://github.com/Hamlib/Hamlib/issues/340 --- rigs/yaesu/ft817.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/rigs/yaesu/ft817.c b/rigs/yaesu/ft817.c index ced515e34..2f950c1c1 100644 --- a/rigs/yaesu/ft817.c +++ b/rigs/yaesu/ft817.c @@ -164,7 +164,7 @@ const struct rig_caps ft817_caps = RIG_MODEL(RIG_MODEL_FT817), .model_name = "FT-817", .mfg_name = "Yaesu", - .version = "20200629.0", + .version = "20200710.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -302,7 +302,7 @@ const struct rig_caps ft818_caps = RIG_MODEL(RIG_MODEL_FT818), .model_name = "FT-818", .mfg_name = "Yaesu", - .version = "20200629.0", + .version = "20200710.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -650,6 +650,12 @@ int ft817_get_freq(RIG *rig, vfo_t vfo, freq_t *freq) dump_hex(p->fm_status, 5); } +#if 1 // user must be twiddling the VFO + // usually get_freq is OK but we have to allow that f1 != f2 when knob is moving + *freq = f2 * 10; + return RIG_OK; +#else // remove this if no complaints + if (retries >= 0) { *freq = f1 * 10; @@ -660,6 +666,8 @@ int ft817_get_freq(RIG *rig, vfo_t vfo, freq_t *freq) return -RIG_EIO; } +#endif + } int ft817_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width) From f986be28a8ea8e8cd4462a244ad7c87a30b0f015 Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Sun, 12 Jul 2020 11:29:31 -0500 Subject: [PATCH 2/9] Fix kenwood RD command to use abs value instead of negative sign https://github.com/Hamlib/Hamlib/issues/341 --- rigs/kenwood/kenwood.c | 2 +- rigs/kenwood/kenwood.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rigs/kenwood/kenwood.c b/rigs/kenwood/kenwood.c index 7455e2d05..7783cb2e6 100644 --- a/rigs/kenwood/kenwood.c +++ b/rigs/kenwood/kenwood.c @@ -1711,7 +1711,7 @@ int kenwood_set_rit(RIG *rig, vfo_t vfo, shortfreq_t rit) if (priv->has_rit2) // if backend shows it has the Set 2 command { char cmd[10]; - snprintf(cmd, sizeof(cmd) - 1, "R%c%05d", rit > 0 ? 'U' : 'D', (int)rit); + snprintf(cmd, sizeof(cmd) - 1, "R%c%05d", rit > 0 ? 'U' : 'D', abs((int)rit)); retval = kenwood_transaction(rig, cmd, NULL, 0); } else diff --git a/rigs/kenwood/kenwood.h b/rigs/kenwood/kenwood.h index 07f93656d..5c800c1d9 100644 --- a/rigs/kenwood/kenwood.h +++ b/rigs/kenwood/kenwood.h @@ -27,7 +27,7 @@ #include #include "token.h" -#define BACKEND_VER "20200707" +#define BACKEND_VER "20200712" #define EOM_KEN ';' #define EOM_TH '\r' From 17112c308e91169363e1698d6f267ed7b4245d28 Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Tue, 14 Jul 2020 11:26:14 -0500 Subject: [PATCH 3/9] Fix kenwood_get_rit to utilize the +/- sign https://github.com/Hamlib/Hamlib/issues/342 --- rigs/kenwood/kenwood.c | 4 ++-- rigs/kenwood/kenwood.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/rigs/kenwood/kenwood.c b/rigs/kenwood/kenwood.c index 7783cb2e6..196826e55 100644 --- a/rigs/kenwood/kenwood.c +++ b/rigs/kenwood/kenwood.c @@ -1678,9 +1678,9 @@ int kenwood_get_rit(RIG *rig, vfo_t vfo, shortfreq_t *rit) return retval; } - memcpy(buf, &priv->info[18], 5); + memcpy(buf, &priv->info[17], 6); - buf[5] = '\0'; + buf[6] = '\0'; *rit = atoi(buf); return RIG_OK; diff --git a/rigs/kenwood/kenwood.h b/rigs/kenwood/kenwood.h index 5c800c1d9..16fb01c72 100644 --- a/rigs/kenwood/kenwood.h +++ b/rigs/kenwood/kenwood.h @@ -27,7 +27,7 @@ #include #include "token.h" -#define BACKEND_VER "20200712" +#define BACKEND_VER "20200714" #define EOM_KEN ';' #define EOM_TH '\r' From 65d8ac8d95f92c2d6099c3f4f047bc400fddfaf7 Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Tue, 14 Jul 2020 12:56:09 -0500 Subject: [PATCH 4/9] Fix spelling error in rigctl.1 --- doc/man1/rigctl.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/man1/rigctl.1 b/doc/man1/rigctl.1 index 9a3cd6792..c57eaf440 100644 --- a/doc/man1/rigctl.1 +++ b/doc/man1/rigctl.1 @@ -1099,7 +1099,7 @@ character should not be a part of the input string. Send a raw command string to the radio and expect a number of bytes returned. .IP This is useful for testing and troubleshooting radio commands and responses when -developing a backend. If the # of bytes requested is <= the number actually returnead no timeout will occur. +developing a backend. If the # of bytes requested is <= the number actually returned no timeout will occur. .IP The command argument can have no spaces in it. For binary protocols enter values as \\0xAA\\0xBB. Expect a From 7fe4a91ac06afa4003b3f103d01c00f85bc6f787 Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Wed, 15 Jul 2020 12:16:40 -0500 Subject: [PATCH 5/9] Fix get_rit of negative RIT for ft1000mp.c https://github.com/Hamlib/Hamlib/issues/343 --- rigs/yaesu/ft1000mp.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/rigs/yaesu/ft1000mp.c b/rigs/yaesu/ft1000mp.c index 7e7e66a93..66957fc9b 100644 --- a/rigs/yaesu/ft1000mp.c +++ b/rigs/yaesu/ft1000mp.c @@ -216,7 +216,7 @@ const struct rig_caps ft1000mp_caps = RIG_MODEL(RIG_MODEL_FT1000MP), .model_name = "FT-1000MP", .mfg_name = "Yaesu", - .version = "20200623.0", + .version = "20200715.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -347,7 +347,7 @@ const struct rig_caps ft1000mpmkv_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKV), .model_name = "MARK-V FT-1000MP", .mfg_name = "Yaesu", - .version = "20200623.0", + .version = "20200715.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -478,7 +478,7 @@ const struct rig_caps ft1000mpmkvfld_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKVFLD), .model_name = "MARK-V Field FT-1000MP", .mfg_name = "Yaesu", - .version = "20200623.0", + .version = "20200715.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -1234,7 +1234,7 @@ int ft1000mp_get_rit(RIG *rig, vfo_t vfo, shortfreq_t *rit) /* big endian integer, kinda */ if (p[0] & 0x80) { - f = (p[0] << 8) + p[1] - 65536; + f = (p[0] << 8) + p[1] * -1; } else { From 51cf5d7bebc2013b79ad904296cf507aac1497c0 Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Thu, 16 Jul 2020 07:16:21 -0500 Subject: [PATCH 6/9] Promote ts870s and ts690 to STABLE --- rigs/kenwood/ts690.c | 2 +- rigs/kenwood/ts870s.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rigs/kenwood/ts690.c b/rigs/kenwood/ts690.c index f92e14b88..b464bed4e 100644 --- a/rigs/kenwood/ts690.c +++ b/rigs/kenwood/ts690.c @@ -79,7 +79,7 @@ const struct rig_caps ts690s_caps = .mfg_name = "Kenwood", .version = BACKEND_VER ".0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_RIG, .dcd_type = RIG_DCD_RIG, diff --git a/rigs/kenwood/ts870s.c b/rigs/kenwood/ts870s.c index adc313fb9..d14a3e111 100644 --- a/rigs/kenwood/ts870s.c +++ b/rigs/kenwood/ts870s.c @@ -543,7 +543,7 @@ const struct rig_caps ts870s_caps = .mfg_name = "Kenwood", .version = BACKEND_VER ".0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_RIG, .dcd_type = RIG_DCD_RIG, From 514cebafd52b0db61b050b3ee46901334f53dbd1 Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Thu, 16 Jul 2020 07:38:36 -0500 Subject: [PATCH 7/9] Try again to fix ft1000mp get_rit for negative values --- rigs/yaesu/ft1000mp.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/rigs/yaesu/ft1000mp.c b/rigs/yaesu/ft1000mp.c index 66957fc9b..ae830a936 100644 --- a/rigs/yaesu/ft1000mp.c +++ b/rigs/yaesu/ft1000mp.c @@ -216,7 +216,7 @@ const struct rig_caps ft1000mp_caps = RIG_MODEL(RIG_MODEL_FT1000MP), .model_name = "FT-1000MP", .mfg_name = "Yaesu", - .version = "20200715.0", + .version = "20200716.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -347,7 +347,7 @@ const struct rig_caps ft1000mpmkv_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKV), .model_name = "MARK-V FT-1000MP", .mfg_name = "Yaesu", - .version = "20200715.0", + .version = "20200716.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -478,7 +478,7 @@ const struct rig_caps ft1000mpmkvfld_caps = RIG_MODEL(RIG_MODEL_FT1000MPMKVFLD), .model_name = "MARK-V Field FT-1000MP", .mfg_name = "Yaesu", - .version = "20200715.0", + .version = "20200716.0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -1232,13 +1232,10 @@ int ft1000mp_get_rit(RIG *rig, vfo_t vfo, shortfreq_t *rit) } /* big endian integer, kinda */ + f = ((p[0] && 0x7f) << 8) + p[1]; if (p[0] & 0x80) { - f = (p[0] << 8) + p[1] * -1; - } - else - { - f = (p[0] << 8) + p[1]; + f *= -1; } f = f * 10 / 16; From a3428370f8c90897ada3723d1ee01f86a8097a5c Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Thu, 16 Jul 2020 07:39:50 -0500 Subject: [PATCH 8/9] Promote K3 to STABLE --- rigs/kenwood/k3.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rigs/kenwood/k3.c b/rigs/kenwood/k3.c index 1759688c7..cdaafea09 100644 --- a/rigs/kenwood/k3.c +++ b/rigs/kenwood/k3.c @@ -182,7 +182,7 @@ const struct rig_caps k3_caps = .mfg_name = "Elecraft", .version = BACKEND_VER ".0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_RIG, .dcd_type = RIG_DCD_RIG, From 416380ecc7d712e9841209ca2b883dc5bbfdaf9f Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Thu, 16 Jul 2020 07:40:18 -0500 Subject: [PATCH 9/9] Promote ic718 and ic7610 to STABLE --- rigs/icom/ic718.c | 2 +- rigs/icom/ic7610.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rigs/icom/ic718.c b/rigs/icom/ic718.c index 630ca3278..620daa4a8 100644 --- a/rigs/icom/ic718.c +++ b/rigs/icom/ic718.c @@ -83,7 +83,7 @@ const struct rig_caps ic718_caps = .mfg_name = "Icom", .version = BACKEND_VER ".0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_NONE, .dcd_type = RIG_DCD_RIG, diff --git a/rigs/icom/ic7610.c b/rigs/icom/ic7610.c index c22485783..013cc935b 100644 --- a/rigs/icom/ic7610.c +++ b/rigs/icom/ic7610.c @@ -170,7 +170,7 @@ const struct rig_caps ic7610_caps = .mfg_name = "Icom", .version = BACKEND_VER ".0", .copyright = "LGPL", - .status = RIG_STATUS_BETA, + .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, .ptt_type = RIG_PTT_RIG, .dcd_type = RIG_DCD_RIG,