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 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, 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, diff --git a/rigs/kenwood/kenwood.c b/rigs/kenwood/kenwood.c index 7455e2d05..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; @@ -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..16fb01c72 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 "20200714" #define EOM_KEN ';' #define EOM_TH '\r' 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, diff --git a/rigs/yaesu/ft1000mp.c b/rigs/yaesu/ft1000mp.c index 7e7e66a93..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 = "20200623.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 = "20200623.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 = "20200623.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] - 65536; - } - else - { - f = (p[0] << 8) + p[1]; + f *= -1; } f = f * 10 / 16; 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)