[Hamlib-commits] Hamlib -- Ham radio control libraries branch Hamlib-4.0 updated. 99a92d63b4ac02728
Library to control radio transceivers and receivers
Brought to you by:
n0nb
From: Nate B. <n0...@us...> - 2020-09-12 13:53:40
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Hamlib -- Ham radio control libraries". The branch, Hamlib-4.0 has been updated via 99a92d63b4ac027282ffee1a85e81e5c211bf026 (commit) via 7377068a508a4a74e46b44571fa161cadcd94379 (commit) via 33c81771e3897c2fcae2c0a36bf00041f91053c6 (commit) via b8f789149fa3fc616cd77882a8e543e598392eb0 (commit) via cc994ee0fc47636d80efb62821646223bb264769 (commit) via c120c9990cd18c8fcd88d54e7689f4286d636912 (commit) via fd7a795473868ac50b17a0af9eb0b3c4601c7bb3 (commit) via 5af1ef3be6c243e45b3ed81dad0d7aaef827309c (commit) via 5e7b46eeeea9bbed648da059c0e428cc8c807a02 (commit) via 4f65a03bff6a828e27b6c0047629b4c67abd17b3 (commit) from 03bc9386288dad95cb917eab8bae66ef751df9fc (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 99a92d63b4ac027282ffee1a85e81e5c211bf026 Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Sep 11 22:44:35 2020 -0500 Update codeql diff --git a/rigs/icom/ic7300.c b/rigs/icom/ic7300.c index 985121e8..1cdcd0d1 100644 --- a/rigs/icom/ic7300.c +++ b/rigs/icom/ic7300.c @@ -62,16 +62,12 @@ struct cmdparams ic7300_extcmds[] = { {.s = RIG_PARM_BEEP}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x00, 0x23}, CMD_DAT_BOL, 1 }, { {.s = RIG_PARM_BACKLIGHT}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x00, 0x81}, CMD_DAT_LVL, 2 }, { {.s = RIG_PARM_TIME}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x00, 0x95}, CMD_DAT_TIM, 2 }, - { {.s = RIG_LEVEL_VOXDELAY}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x01, 0x91}, CMD_DAT_INT, 1 }, { {.s = RIG_PARM_NONE} } }; -struct cmdparams ic705_extcmds[] = +struct cmdparams ic7300_extlevels[] = { - { {.s = RIG_PARM_BEEP}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x00, 0x29}, CMD_DAT_BOL, 1 }, { {.s = RIG_LEVEL_VOXDELAY}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x03, 0x59}, CMD_DAT_INT, 1 }, - { {.s = RIG_PARM_SCREENSAVER}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x01, 0x38}, CMD_DAT_INT, 1 }, - { {.s = RIG_PARM_NONE} } }; /* @@ -157,11 +153,15 @@ struct cmdparams ic9700_extcmds[] = { { {.s = RIG_PARM_BEEP}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x00, 0x29}, CMD_DAT_BOL, 1 }, { {.s = RIG_PARM_BACKLIGHT}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x01, 0x52}, CMD_DAT_LVL, 2 }, - { {.s = RIG_LEVEL_VOXDELAY}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x03, 0x30}, CMD_DAT_INT, 1 }, { {.s = RIG_PARM_SCREENSAVER}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x01, 0x67}, CMD_DAT_INT, 1 }, { {.s = RIG_PARM_NONE} } }; +struct cmdparams ic9700_extlevels[] = +{ + { {.s = RIG_LEVEL_VOXDELAY}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x03, 0x30}, CMD_DAT_INT, 1 }, +}; + #define IC9700_STR_CAL { 7, \ { \ { 0, -54 }, \ @@ -233,6 +233,7 @@ static const struct icom_priv_caps IC7300_priv_caps = { .level = -1, .icom_level = 0 }, }, .extcmds = ic7300_extcmds, /* Custom op parameters */ + .extlevels = ic7300_extlevels, /* Custom parameters */ }; static const struct icom_priv_caps IC9700_priv_caps = @@ -250,6 +251,7 @@ static const struct icom_priv_caps IC9700_priv_caps = { .level = -1, .icom_level = 0 }, }, .extcmds = ic9700_extcmds, /* Custom op parameters */ + .extlevels = ic9700_extlevels, /* Custom op parameters */ }; static const struct icom_priv_caps IC705_priv_caps = @@ -266,7 +268,8 @@ static const struct icom_priv_caps IC705_priv_caps = { .level = RIG_AGC_SLOW, .icom_level = 3 }, { .level = -1, .icom_level = 0 }, }, - .extcmds = ic705_extcmds, /* Custom op parameters */ + .extcmds = ic7300_extcmds, /* Custom parameters */ + .extlevels = ic7300_extlevels, /* Custom parameters */ }; const struct rig_caps ic7300_caps = diff --git a/rigs/icom/icom.c b/rigs/icom/icom.c index 059310bc..275f59da 100644 --- a/rigs/icom/icom.c +++ b/rigs/icom/icom.c @@ -2340,7 +2340,7 @@ int icom_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__); - const struct cmdparams *cmd = priv_caps->extcmds; + const struct cmdparams *cmd = priv_caps->extlevels; for (i = 0; cmd && cmd[i].id.s != 0; i++) { @@ -2697,7 +2697,7 @@ int icom_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__); const struct icom_priv_caps *priv = rig->caps->priv; - const struct cmdparams *cmd = priv->extcmds; + const struct cmdparams *cmd = priv->extlevels; int i; for (i = 0; cmd && cmd[i].id.s != 0; i++) commit 7377068a508a4a74e46b44571fa161cadcd94379 Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Sep 11 09:49:47 2020 -0500 Start of migrating Icom rigs to separate LEVEL and PARM values to avoid collisions https://github.com/Hamlib/Hamlib/issues/373 diff --git a/rigs/icom/ic756.c b/rigs/icom/ic756.c index 9c740424..730b802d 100644 --- a/rigs/icom/ic756.c +++ b/rigs/icom/ic756.c @@ -542,7 +542,7 @@ const struct rig_caps ic756pro2_caps = RIG_MODEL(RIG_MODEL_IC756PROII), .model_name = "IC-756PROII", .mfg_name = "Icom", - .version = BACKEND_VER ".1", + .version = BACKEND_VER ".0", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, diff --git a/rigs/icom/icom.h b/rigs/icom/icom.h index 90fb245e..fe259658 100644 --- a/rigs/icom/icom.h +++ b/rigs/icom/icom.h @@ -31,7 +31,7 @@ #include <sys/time.h> #endif -#define BACKEND_VER "20200910" +#define BACKEND_VER "20200911" /* * defines used by comp_cal_str in rig.c @@ -167,6 +167,8 @@ struct icom_priv_caps int agc_levels_present; /* Flag to indicate that agc_levels array is populated */ struct icom_agc_level agc_levels[RIG_AGC_LAST + 1]; /* Icom rig-specific AGC levels, the last entry should have level -1 */ struct cmdparams *extcmds; /* Pointer to extended operations array */ + struct cmdparams *extlevels; /* Pointer to extended operations array */ + struct cmdparams *extparms; /* Pointer to extended operations array */ }; commit 33c81771e3897c2fcae2c0a36bf00041f91053c6 Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Sep 11 08:40:07 2020 -0500 Update rigctl.1 set_ant diff --git a/doc/man1/rigctl.1 b/doc/man1/rigctl.1 index ff0b3c6b..7814e960 100644 --- a/doc/man1/rigctl.1 +++ b/doc/man1/rigctl.1 @@ -667,7 +667,7 @@ and .IP Number is 1-based antenna# (\(oq1\(cq, \(oq2\(cq, \(oq3\(cq, ...). .IP -Option depends on rig..for Icom it probably sets the RX only flag. See your manual for specific option values. +Option depends on rig..for Icom it probably sets the RX only flag as in the IC-7851. See your manual for specific option values. Most rigs don't care about the option. . .TP .BR y ", " get_ant " \(aq" \fIAntenna\fP \(aq commit b8f789149fa3fc616cd77882a8e543e598392eb0 Author: Michael Black W9MDB <mdb...@ya...> Date: Fri Sep 11 08:04:43 2020 -0500 Remove RIG_LEVEL_BRIGHT from dumpmem.c diff --git a/tests/dumpmem.c b/tests/dumpmem.c index 97cf6edc..9f965b53 100644 --- a/tests/dumpmem.c +++ b/tests/dumpmem.c @@ -397,10 +397,5 @@ int dump_chan(RIG *rig, int chan_num) printf("BKINDL: %d\n", chan.levels[rig_setting2idx(RIG_LEVEL_BKINDL)].i); } - if (rig_has_set_level(rig, RIG_LEVEL_BRIGHT)) - { - printf("BRIGHT: %d\n", chan.levels[rig_setting2idx(RIG_LEVEL_BRIGHT)].i); - } - return 0; } commit cc994ee0fc47636d80efb62821646223bb264769 Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Sep 10 15:32:17 2020 -0500 Add RIG_LEVEL_AF to k3.c diff --git a/rigs/kenwood/k3.c b/rigs/kenwood/k3.c index 08e2a873..3ae0afc8 100644 --- a/rigs/kenwood/k3.c +++ b/rigs/kenwood/k3.c @@ -180,7 +180,7 @@ const struct rig_caps k3_caps = RIG_MODEL(RIG_MODEL_K3), .model_name = "K3", .mfg_name = "Elecraft", - .version = BACKEND_VER ".0", + .version = BACKEND_VER ".1", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -329,7 +329,7 @@ const struct rig_caps k3s_caps = RIG_MODEL(RIG_MODEL_K3S), .model_name = "K3S", .mfg_name = "Elecraft", - .version = BACKEND_VER ".0", + .version = BACKEND_VER ".1", .copyright = "LGPL", .status = RIG_STATUS_STABLE, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -479,7 +479,7 @@ const struct rig_caps k4_caps = RIG_MODEL(RIG_MODEL_K4), .model_name = "K4", .mfg_name = "Elecraft", - .version = BACKEND_VER ".0", + .version = BACKEND_VER ".1", .copyright = "LGPL", .status = RIG_STATUS_ALPHA, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -628,7 +628,7 @@ const struct rig_caps kx3_caps = RIG_MODEL(RIG_MODEL_KX3), .model_name = "KX3", .mfg_name = "Elecraft", - .version = BACKEND_VER ".0", + .version = BACKEND_VER ".1", .copyright = "LGPL", .status = RIG_STATUS_BETA, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -777,7 +777,7 @@ const struct rig_caps kx2_caps = RIG_MODEL(RIG_MODEL_KX2), .model_name = "KX2", .mfg_name = "Elecraft", - .version = BACKEND_VER ".0", + .version = BACKEND_VER ".1", .copyright = "LGPL", .status = RIG_STATUS_BETA, .rig_type = RIG_TYPE_TRANSCEIVER, @@ -1664,6 +1664,10 @@ int k3_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) snprintf(levelbuf, sizeof(levelbuf), "SQ%03d", (int)(val.f * 29.0f)); break; + case RIG_LEVEL_AF: + snprintf(levelbuf, sizeof(levelbuf), "AG%03d", (int)(val.f * 250.0f)); + break; + case RIG_LEVEL_RF: snprintf(levelbuf, sizeof(levelbuf), "RG%03d", (int)(val.f * 250.0f)); break; @@ -1908,6 +1912,18 @@ int k3_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) val->f = (float) lvl / 29.0f; break; + case RIG_LEVEL_AF: + retval = kenwood_safe_transaction(rig, "AG", lvlbuf, sizeof(lvlbuf), 5); + + if (retval != RIG_OK) + { + return retval; + } + + sscanf(lvlbuf + 2, "%d", &lvl); + val->f = (float) lvl / 250.0f; + break; + case RIG_LEVEL_RF: retval = kenwood_safe_transaction(rig, "RG", lvlbuf, sizeof(lvlbuf), 5); commit c120c9990cd18c8fcd88d54e7689f4286d636912 Author: Michael Black W9MDB <mdb...@ya...> Date: Thu Sep 10 10:07:11 2020 -0500 Remove redundant RIG_LEVEL_BRIGHT diff --git a/include/hamlib/rig.h b/include/hamlib/rig.h index 57f9c32f..b382f9d1 100644 --- a/include/hamlib/rig.h +++ b/include/hamlib/rig.h @@ -880,7 +880,7 @@ enum rig_level_e { RIG_LEVEL_NOTCHF_RAW = CONSTANT_64BIT_FLAG(36), /*!< \c NOTCHF_RAW -- Notch Freq., arg float [0.0 ... 1.0] */ RIG_LEVEL_MONITOR_GAIN = CONSTANT_64BIT_FLAG(37), /*!< \c MONITOR_GAIN -- Monitor gain (level for monitoring of transmitted audio), arg float [0.0 ... 1.0] */ RIG_LEVEL_NB = CONSTANT_64BIT_FLAG(38), /*!< \c NB -- Noise Blanker level, arg float [0.0 ... 1.0] */ - RIG_LEVEL_BRIGHT = CONSTANT_64BIT_FLAG(39), /*!< \c Display brightness */ + RIG_LEVEL_39 = CONSTANT_64BIT_FLAG(39), /*!< \c Future use */ RIG_LEVEL_40 = CONSTANT_64BIT_FLAG(40), /*!< \c Future use */ RIG_LEVEL_41 = CONSTANT_64BIT_FLAG(41), /*!< \c Future use */ RIG_LEVEL_42 = CONSTANT_64BIT_FLAG(42), /*!< \c Future use */ diff --git a/rigs/icom/ic7300.c b/rigs/icom/ic7300.c index 26df43b9..985121e8 100644 --- a/rigs/icom/ic7300.c +++ b/rigs/icom/ic7300.c @@ -139,7 +139,7 @@ struct cmdparams ic705_extcmds[] = #define IC705_ALL_TX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR) #define IC705_ALL_RX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_PKTLSB|RIG_MODE_PKTUSB|RIG_MODE_PKTFM|RIG_MODE_PKTAM|RIG_MODE_DSTAR) #define IC705_OTHER_TX_MODES (RIG_MODE_FM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR) -#define IC705_LEVELS (RIG_LEVEL_PREAMP|RIG_LEVEL_ATT|RIG_LEVEL_AGC|RIG_LEVEL_COMP|RIG_LEVEL_BKINDL|RIG_LEVEL_NR|RIG_LEVEL_PBT_IN|RIG_LEVEL_PBT_OUT|RIG_LEVEL_CWPITCH|RIG_LEVEL_RFPOWER|RIG_LEVEL_MICGAIN|RIG_LEVEL_KEYSPD|RIG_LEVEL_NOTCHF_RAW|RIG_LEVEL_SQL|RIG_LEVEL_RAWSTR|RIG_LEVEL_STRENGTH|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_VOXGAIN|RIG_LEVEL_ANTIVOX|RIG_LEVEL_VOXDELAY|RIG_LEVEL_SWR|RIG_LEVEL_ALC|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB|RIG_LEVEL_BRIGHT) +#define IC705_LEVELS (RIG_LEVEL_PREAMP|RIG_LEVEL_ATT|RIG_LEVEL_AGC|RIG_LEVEL_COMP|RIG_LEVEL_BKINDL|RIG_LEVEL_NR|RIG_LEVEL_PBT_IN|RIG_LEVEL_PBT_OUT|RIG_LEVEL_CWPITCH|RIG_LEVEL_RFPOWER|RIG_LEVEL_MICGAIN|RIG_LEVEL_KEYSPD|RIG_LEVEL_NOTCHF_RAW|RIG_LEVEL_SQL|RIG_LEVEL_RAWSTR|RIG_LEVEL_STRENGTH|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_VOXGAIN|RIG_LEVEL_ANTIVOX|RIG_LEVEL_VOXDELAY|RIG_LEVEL_SWR|RIG_LEVEL_ALC|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB) /* * IC9700 items that differ from IC7300 diff --git a/rigs/icom/icom.c b/rigs/icom/icom.c index 24a6cd32..059310bc 100644 --- a/rigs/icom/icom.c +++ b/rigs/icom/icom.c @@ -2653,11 +2653,6 @@ int icom_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) lvl_sc = S_LVL_MON; break; - case RIG_LEVEL_BRIGHT: - lvl_cn = C_CTL_LVL; - lvl_sc = S_LVL_BRIGHT; - break; - default: rig_debug(RIG_DEBUG_ERR, "%s: unsupported set_level %s", __func__, rig_strlevel(level)); diff --git a/rigs/icom/icom.h b/rigs/icom/icom.h index b5959882..90fb245e 100644 --- a/rigs/icom/icom.h +++ b/rigs/icom/icom.h @@ -31,7 +31,7 @@ #include <sys/time.h> #endif -#define BACKEND_VER "20200906" +#define BACKEND_VER "20200910" /* * defines used by comp_cal_str in rig.c diff --git a/rigs/kenwood/flex6xxx.c b/rigs/kenwood/flex6xxx.c index a1f598c2..67959ac3 100644 --- a/rigs/kenwood/flex6xxx.c +++ b/rigs/kenwood/flex6xxx.c @@ -47,6 +47,9 @@ #define F6K_ANTS (RIG_ANT_1|RIG_ANT_2|RIG_ANT_3) +/* PowerSDR differences */ +#define POWERSDR_LEVEL_ALL (RIG_LEVEL_SLOPE_HIGH|RIG_LEVEL_SLOPE_LOW|RIG_LEVEL_KEYSPD|RIG_LEVEL_RFPOWER_METER) + static rmode_t flex_mode_table[KENWOOD_MODE_TABLE_MAX] = { @@ -628,6 +631,52 @@ int flex6k_set_ptt(RIG *rig, vfo_t vfo, ptt_t ptt) return err; } +/* + * powersdr_get_level + */ +int powersdr_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val) +{ + char lvlbuf[KENWOOD_MAX_BUF_LEN]; + char *cmd; + int retval; + int len; + + rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__); + + if (!val) + { + return -RIG_EINVAL; + } + + switch (level) + { + case RIG_LEVEL_RFPOWER_METER: + cmd = "ZZRM5"; + len = 5; + break; + default: + return kenwood_get_level(rig,vfo,level,val); + } + retval = kenwood_safe_transaction(rig, cmd, lvlbuf, 10, len + 3); + if (retval != RIG_OK) + { + return retval; + } + int n; + switch (level) + { + case RIG_LEVEL_RFPOWER_METER: + n = sscanf(lvlbuf + len, "%f", &val->f); + if (n != 1) { + rig_debug(RIG_DEBUG_ERR,"%s: Error parsing RFPOWER from lvlbuf='%s'\n",__func__,lvlbuf); + return -RIG_EPROTO; + } + val->f /= 100; + break; + } + return RIG_OK; +} + /* * F6K rig capabilities. @@ -785,7 +834,7 @@ const struct rig_caps powersdr_caps = .has_get_func = RIG_FUNC_NONE, /* has VOX but not implemented here */ .has_set_func = RIG_FUNC_NONE, - .has_get_level = F6K_LEVEL_ALL, + .has_get_level = POWERSDR_LEVEL_ALL, .has_set_level = F6K_LEVEL_ALL, .has_get_parm = RIG_PARM_NONE, .has_set_parm = RIG_PARM_NONE, /* FIXME: parms */ @@ -879,7 +928,8 @@ const struct rig_caps powersdr_caps = // TODO copy over kenwood_[set|get]_level and modify to handle DSP filter values // correctly - use actual values instead of indices .set_level = kenwood_set_level, - .get_level = kenwood_get_level, + .get_level = powersdr_get_level, //.set_ant = kenwood_set_ant_no_ack, //.get_ant = kenwood_get_ant, }; + diff --git a/src/misc.c b/src/misc.c index 56c3656a..a8c81175 100644 --- a/src/misc.c +++ b/src/misc.c @@ -683,7 +683,6 @@ static struct { RIG_LEVEL_NOTCHF_RAW, "NOTCHF_RAW" }, { RIG_LEVEL_MONITOR_GAIN, "MONITOR_GAIN" }, { RIG_LEVEL_NB, "NB" }, - { RIG_LEVEL_BRIGHT, "BRIGHT" }, { RIG_LEVEL_NONE, "" }, }; commit fd7a795473868ac50b17a0af9eb0b3c4601c7bb3 Author: Mikael Nousiainen <mik...@ik...> Date: Wed Sep 9 18:12:17 2020 +0300 Propagate variable read_only value to rig implementation of get_channel diff --git a/src/mem.c b/src/mem.c index cd3e82fb..837ec149 100644 --- a/src/mem.c +++ b/src/mem.c @@ -853,7 +853,7 @@ int HAMLIB_API rig_get_channel(RIG *rig, channel_t *chan, int read_only) if (rc->get_channel) { - return rc->get_channel(rig, chan, 0); + return rc->get_channel(rig, chan, read_only); } /* commit 5af1ef3be6c243e45b3ed81dad0d7aaef827309c Author: Nate Bargmann <n0...@n0...> Date: Thu Sep 10 08:40:04 2020 -0500 Update informational man pages for Hamlib 4.0 diff --git a/doc/man7/hamlib-primer.7 b/doc/man7/hamlib-primer.7 index dea2ee5a..b15a7205 100644 --- a/doc/man7/hamlib-primer.7 +++ b/doc/man7/hamlib-primer.7 @@ -5,7 +5,7 @@ .\" .\" Please keep this file in sync with doc/getting_started.texi .\" -.TH HAMLIB-PRIMER "7" "2018-05-27" "Hamlib" "Hamlib Information Manual" +.TH HAMLIB-PRIMER "7" "2020-09-08" "Hamlib" "Hamlib Information Manual" . . .SH NAME @@ -73,11 +73,13 @@ SourceForge.net Hamlib files .UE Web page. . -As a convenience, release archives are also mirrored at the -.UR https://github.com/Hamlib/Hamlib/releases -GitHub Hamlib releases -.UE -page. +.\" It appears as of early September 2020 that the uploaded releases have been +.\" deleted from GitHub +'\" As a convenience, release archives are also mirrored at the +.\" .UR https://github.com/Hamlib/Hamlib/releases +.\" GitHub Hamlib releases +'\" .UE +.\" page. . The most recent release is listed first. . @@ -87,14 +89,17 @@ The most recent release is listed first. Testing release candidates (RCs) are posted during the period (often a few weeks) before a planned release. . -Beginning with the 3.2 release, RCs are hosted by the -.UR https://github.com/Hamlib/Hamlib/releases -GitHub release archive -.UE . +Beginning with the 4.0 release, RCs are hosted by the +.UR http://sourceforge.net/projects/hamlib/files/hamlib/ +SourceForge.net Hamlib files +.UE +Web page. . RCs are identifed by having a -.I ~rc -suffix. +.I ~rcX +suffix where the +.I X +is replace by a numeral for successive release candidates. . .PP Daily snapshots of the development repository are available via the World Wide @@ -140,21 +145,21 @@ None of the meta-data is hidden away on some central server. .PP To clone the repository use the following command: . -.sp -.RS 0.5i +.PP +.in +4n .EX -git clone https://git.code.sf.net/p/hamlib/code hamlib +.B git clone https://git.code.sf.net/p/hamlib/code hamlib .EE -.RE +.in . .PP or: -.sp -.RS 0.5i +.PP +.in +4n .EX -git clone https://github.com/Hamlib/Hamlib.git +.B git clone https://github.com/Hamlib/Hamlib.git .EE -.RE +.in . .PP . @@ -194,18 +199,22 @@ Any is a good reason to build from the source code archive. .PP Before going further, this manual assumes familiarity with working from the command prompt in a Linux/BSD/Unix like system's -.I shell -environment, either in a +.I Bourne shell +environment (compatible Bourne shells include +.BR bash (1), +.BR ksh (1), +.BR zsh (1), +and several more) either in a .I virtual console (a text only screen with no graphics) or in a .I terminal in a desktop environment -.RB ( xterm , -.BR rxvt , -.BR konsole , -.BR gnome\-terminal , -.BR xfce4\-terminal , -.BR terminal , +.RB ( xterm (1), +.BR rxvt (1), +.BR konsole "(1) (included with the KDE desktop)," +.BR gnome\-terminal (1), +.BR xfce4\-terminal (1), +.BR terminal "(1) (included in macOS)," etc.). . If this is new to you, take some time and read up on using the shell. @@ -250,14 +259,14 @@ or daily development snapshot follows the same set of commands, known as the .I three step which are each run from the top-level directory: . -.sp -.RS 0.5i +.PP +.in +4n .EX -\&./configure -make -sudo make install +.B ./configure +.B make +.B sudo make install .EE -.RE +.in . .SS configure . @@ -279,12 +288,12 @@ command could be lurking elsewhere and we don't want to run that! .PP Run: . -.sp -.RS 0.5i +.PP +.in +4n .EX -\&./configure +.B ./configure .EE -.RE +.in . .PP from the top-level directory. @@ -346,12 +355,12 @@ file system hierarchy. . Perhaps you want to install to your home directory instead: . -.sp -.RS 0.5i +.PP +.in +4n .EX -\&./configure \-\-prefix=$HOME/local +.B ./configure \-\-prefix=$HOME/local .EE -.RE +.in . .IP .BR Note : @@ -365,7 +374,7 @@ installed to .IR $HOME/local . . .PP -All of the files will be installed in the +As a result of this option, all of the files will be installed in the .I local directory of your home directory. . @@ -381,6 +390,26 @@ or superuser (administrator) privileges are not required when running On the other hand, some extra work will need to be done so other programs can use the library. . +The utilities that are compiled as a part of the Hamlib build system will work +as they are +.I linked +to the library installed under +.IR local . +. +Running them will require declaring the complete path: +. +.PP +.in +4n +.EX +.B local/bin/rigctl +.EE +.in +. +.PP +or modifying your shell's +.I PATH +environment variable (see the shell tutorial site above). +. .\" (TODO: describe library hackery in an appendix). . .PP @@ -397,7 +426,7 @@ combination to scroll back up. . Conversely, Shift\-PageDown can be used to scroll down toward the end of the output and the shell prompt (Shift\-UpArrow/Shift\-DownArrow may also work to -scroll one line at a time). +scroll one line at a time (terminal dependent)). . .PP After a fair amount of time, depending on your computer, and a lot of screen @@ -411,7 +440,7 @@ or some such failure message Hamlib is ready to be compiled. If there is an error and all of the required packages listed in .I README.betatester have been installed, please ask for help on the -.MT hamlib\-developer@@lists.sourceforge.net +.MT hamlib\-de...@li... hamlib-developer mailing list .ME . . @@ -435,12 +464,12 @@ library files and its executable programs. .PP Run: . -.sp -.RS 0.5i +.PP +.in +4n .EX -make +.B make .EE -.RE +.in . .PP from the top-level directory. @@ -449,7 +478,7 @@ from the top-level directory. Any error that causes .B make to stop early is cause for a question to the -.MT hamlib\-developer@@lists.sourceforge.net +.MT hamlib\-de...@li... hamlib-developer mailing list .ME . . @@ -460,9 +489,9 @@ will take longer than .B configure to complete its run. . -As it is a system command, and therefore found in the -.BR PATH , -prefixing +As it is a system command, and therefore found in the shell's +.B PATH +environment variable, prefixing .B make with .I ./ @@ -490,16 +519,44 @@ family of distributions. .PP Run: . -.sp -.RS 0.5i +.PP +.in +4n .EX -sudo make install +.B sudo make install .EE -.RE +.in +. +.PP +or: +. +.PP +.in +4n +.EX +.RB $ " su -l" +Password: +.RB # " make install" +.EE +.in . .PP as root from the top-level directory. . +.IP +.BR Note : +The shell session is shown to show the change in prompt from a normal user +account to the root accout. +. +.PP +The +.B \-l +option to +.B su +forces a +.I login +shell so that environment variables such as +.I PATH +are set correctly. +. .PP Running .B make install @@ -536,22 +593,22 @@ It too will need to be run with root privileges: .PP Run: . -.sp -.RS 0.5i +.PP +.in +4n .EX -sudo ldconfig +.B sudo ldconfig .EE -.RE +.in . .PP -as root from any directory. +as root from any directory or while logged in as root from above. . -.PP +.IP .BR Note : Subsequent installations of Hamlib will not need to have .B ldconfig run after each installation if a newer version of Hamlib was not installed, -i.e. when recompiling the same version during development. +i.e., when recompiling the same version during development. . .PP On some distributions a bit of configuration will be needed before @@ -637,7 +694,7 @@ executable files generated by running .B make freeing up considerable disk space. . -.PP +.IP .BR Note : During development of individual source files, it is not necessary to run @@ -709,12 +766,12 @@ the needed compiler and linker options are passed as environment variables. . .PP Run: -.sp -.RS 0.5i +.PP +.in +4n .EX -\&../hamlib/configure CFLAGS="-ggdb3 -O0" CXXFLAGS="-ggdb3 -O0" +.B ../hamlib/configure CFLAGS="-ggdb3 -O0" CXXFLAGS="-ggdb3 -O0" .EE -.RE +.in . .PP from a sibling build directory intended for a debugging build. @@ -738,7 +795,7 @@ and .B CXXFLAGS may be set independently for each compiler. . -.PP +.IP .BR Note : There are a number compiler options available for controlling debugging symbols and setting optimization levels. @@ -748,7 +805,7 @@ Please consult the compiler's manual for all the details. . .SS Compiling for Microsoft Windows . -Currently compiling is done on a Debian 8 (Jessie) virtual machine using +Currently compiling is done on a Debian 10 (Buster) virtual machine using .UR http://www.mingw.org MinGW .UE . @@ -764,16 +821,18 @@ Pre-compiled binaries for Microsoft Windows 32 and 64 bit architectures (Windows NT and newer) are available for both official releases and daily development snapshots. . +.PP Official releases are available through the .UR http://sourceforge.net/projects/hamlib/files/hamlib/ SourceForge.net file download service .UE . . -As an alternative, official releases are also available though the -.UR https://github.com/Hamlib/Hamlib/releases -Hamlib archive at GitHub -.UE . +.\"As an alternative, official releases are also available though the +.\".UR https://github.com/Hamlib/Hamlib/releases +.\"Hamlib archive at GitHub +.\".UE . . +.PP Daily development snapshots are available from the .UR http://n0nb.users.sourceforge.net/ daily snapshots page @@ -786,7 +845,7 @@ available. Among its features are selecting which portions of Hamlib are installed. . The -.B PATH +.I PATH environment variable will need to be set manually per the included .I README.w32-bin or @@ -799,7 +858,7 @@ extracting installer. . .PP Bug reports and questions about these archives should be sent to the -.MT hamlib-developer@@lists.sourceforge.net +.MT ham...@li... hamlib-developer mailing list .ME . . @@ -811,7 +870,7 @@ radio and rotator control functions for developers of software primarily of interest to radio amateurs and those interested in radio communications. . .PP -Copyright \(co 2001-2018 Hamlib Group (various contributors) +Copyright \(co 2001-2020 Hamlib Group (various contributors) . .PP This is free software; see the file COPYING for copying conditions. There is @@ -831,8 +890,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH COLOPHON . Links to the Hamlib Wiki, Git repository, release archives, and daily snapshot -archives: -.IP +archives are available via +. .UR http://www.hamlib.org hamlib.org .UE . diff --git a/doc/man7/hamlib-utilities.7 b/doc/man7/hamlib-utilities.7 index 8b369c08..866bdd68 100644 --- a/doc/man7/hamlib-utilities.7 +++ b/doc/man7/hamlib-utilities.7 @@ -5,7 +5,7 @@ .\" .\" Please keep this file in sync with doc/utility-programs.texi .\" -.TH HAMLIB-UTILITIES "7" "2018-05-27" "Hamlib" "Hamlib Information Manual" +.TH HAMLIB-UTILITIES "7" "2020-09-08" "Hamlib" "Hamlib Information Manual" . . .SH NAME @@ -26,17 +26,20 @@ library functions both through the .SM API. . .PP -This page summarizes the two test programs, +This page summarizes the three test programs, +.BR ampctl (1) +for testing amplifier back ends, .BR rigctl (1) -for testing radio back ends and +for testing radio back ends, and .BR rotctl (1) -for testing rotator back ends and the two network daemons, -.BR rigctld (1) +for testing rotator back ends and the three network daemons, +.BR ampctld (1), +.BR rigctld (1), and .BR rotcltd (1) -for radio and rotator access via network sockets. +for amplifier, radio, and rotator access via network sockets. . -Also included are three demonstation utilities, +Also included are three demonstration utilities, .BR rigmem (1), .BR rigsmtr (1), and @@ -70,42 +73,40 @@ additional commands. . .PP In its most simple use as a -.I "command line" +.I command line program, rigctl is used to set frequency and mode by typing commands after any rigctl options: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rigctl F 14205000 -.br -rigctl M USB 2400 +.B rigctl F 14205000 +.B rigctl M USB 2400 .EE -.RE +.in . .PP and then query those values: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rigctl f -.br -rigctl m +.B rigctl f +.B rigctl m .EE -.RE +.in . .PP Entering -.I "interactive mode" +.I interactive mode is a simple matter of not placing any commands after any rigctl options: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rigctl +.B rigctl .EE -.RE +.in . .PP Entering interactive mode allows successive commands to be entered without @@ -121,35 +122,31 @@ library. .PP Interactive mode is indicated by the spartan prompt: . -.sp -.RS 0.5i +.PP +.in +4n .EX Rig command: .EE -.RE +.in . .PP Commands are given at the prompt and follow the general rule that upper case letters set a value and lower case letters query a value: . -.sp -.RS 0.5i +.PP +.in +4n .EX -Rig command: M -.br -Mode: USB -.br -Passband: 2500 -.sp -Rig command: m -.br +.RB "Rig command: " M +.RB "Mode: " USB +.RB "Passband: " 2500 + +.RB "Rig command: " m Mode: USB -.br Passband: 2500 -.sp + Rig command: .EE -.RE +.in . .PP An additional prompt is printed when more information is required by the @@ -168,7 +165,7 @@ The above examples invoked rigctl without specifying a radio model. . This is a feature where the Hamlib internal radio model 1 .I dummy -is used instead. +is used. . The dummy radio provides a way to test Hamlib functions without the need for actual radio hardware. @@ -179,32 +176,29 @@ the actual radio connected to the computer is necessary for debugging. .PP For example, to quickly set frequency on an Elecraft K3: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rigctl -m 229 -r /dev/rig F 3900000 +.B rigctl -m 2029 -r /dev/rig F 3900000 .EE -.RE +.in . .PP and to query the frequency and then mode: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rigctl -m 229 -r /dev/rig f -.br +.B rigctl -m 2029 -r /dev/rig f 3900000 -.sp -rigctl -m 229 -r /dev/rig m -.br + +.B rigctl -m 2029 -r /dev/rig m LSB -.br 2000 .EE -.RE +.in . -.PP +.IP .BR Note : the returned values do not have the prompt strings associated with interactive mode as shown above. @@ -220,40 +214,29 @@ option takes the path to the port device on .SM POSIX and the device name on Microsoft Windows. . -.PP +.IP .BR Note : A complete list of supported radio models may be seen by use of the .B -l option: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rigctl -l -.br +.B rigctl -l Rig # Mfg Model Version Status -.br 1 Hamlib Dummy 0.5 Beta -.br 2 Hamlib NET rigctl 0.3 Beta -.br - 101 Yaesu FT-847 0.5 Beta -.br - 103 Yaesu FT-1000D 0.0.6 Alpha -.br + 1001 Yaesu FT-847 0.5 Beta + 1003 Yaesu FT-1000D 0.0.6 Alpha \&. -.br \&. -.br \&. -.br - 2702 Rohde&Schwarz EB200 0.1 Untested -.br - 2801 Philips/Simoco PRM8060 0.1 Alpha -.br - 2901 ADAT www.adat.ch ADT-200A 1.36 Beta + 27002 Rohde&Schwarz EB200 0.1 Untested + 28001 Philips/Simoco PRM8060 0.1 Alpha + 29001 ADAT www.adat.ch ADT-200A 1.36 Beta .EE -.RE +.in . .PP The list is long so use \f(CWShift\-PageUp\fP/\f(CWShift\-PageDown\fP on @@ -264,7 +247,7 @@ window on Microsoft Windows) or the output can be piped to .BR more (1) or .BR less (1), -e.g. \(lq\f(CWrigctl -l | more\fP\(rq to scroll back up the list. +e.g., \(lq\f(CWrigctl -l | more\fP\(rq to scroll back up the list. . The list is sorted numerically by model number since Hamlib 1.2.15.1. . @@ -305,40 +288,39 @@ additional commands. . .PP In its most simple use as a -.I "command line" +.I command line program, rotctl is used to set azimuth position and (optionally) elevation by typing commands after any rotctl options: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rotctl P 145.0 23.0 -.br -rotctl M 8 25 +.B rotctl P 145.0 23.0 +.B rotctl M 8 25 .EE -.RE +.in . .PP and then query those values: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rotctl p +.B rotctl p .EE -.RE +.in . .PP Entering -.I "interactive mode" +.I interactive mode is a simple matter of not placing any commands after any rotctl options: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rotctl +.B rotctl .EE -.RE +.in . .PP Entering interactive mode allows successive commands to be entered without @@ -354,40 +336,34 @@ library. .PP Interactive mode is indicated by the spartan prompt: . -.sp -.RS 0.5i +.PP +.in +4n .EX Rotator command: .EE -.RE +.in . .PP Commands are given at the prompt: . -.sp -.RS 0.5i +.PP +.in +4n .EX -Rotator command: M -.br -Direction: 16 -.br -Speed: 60 -.sp -Rotator command: p -.br +.RB "Rotator command: " M +.RB "Direction: " 16 +.RB "Speed: " 60 + +.RB "Rotator command: " p Azimuth: 11.352000 -.br Elevation: 0.000000 -.sp -Rotator command: p -.br + +.RB "Rotator command: " p Azimuth: 27.594000 -.br Elevation: 0.000000 -.sp + Rotator command: .EE -.RE +.in . .PP An additional prompt is printed when more information is required by the @@ -417,26 +393,24 @@ controller connected to the computer is necessary for debugging. .PP For example, to quickly set position for RotorEZ: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rotctl -m 401 -r /dev/rotor P 100.0 0.0 +.B rotctl -m 401 -r /dev/rotor P 100.0 0.0 .EE -.RE +.in . .PP and to query the position: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rotctl -m 401 -r /dev/rotor p -.br +.B rotctl -m 401 -r /dev/rotor p 100.000000 -.br 0.000000 .EE -.RE +.in . .PP The returned values do not have the prompt strings associated with interactive @@ -453,40 +427,29 @@ option takes the path to the port device on .SM POSIX or the device name on Microsoft Windows. . -.PP +.IP .BR Note : A complete list of supported rotator models may be seen by use of the .B -l option: . -.sp -.RS 0.5i +.PP +.in +4n .EX -rotctl -l -.br +.B rotctl -l Rot # Mfg Model Version Status -.br 1 Hamlib Dummy 0.5 Beta -.br 2 Hamlib NET rotctl 0.3 Beta -.br 201 Hamlib EasycommI 0.3 Beta -.br 202 Hamlib EasycommII 0.3 Beta -.br \&. -.br \&. -.br \&. -.br 1201 AMSAT IF-100 0.1 Untested -.br 1301 LA7LKA ts7400 0.1 Beta -.br 1401 Celestron NexStar 0.1 Untested .EE -.RE +.in . .PP The list is long so use \f(CWShift\-PageUp\fP/\f(CWShift\-PageDown\fP on @@ -511,6 +474,21 @@ The complete reference for rotctl can be found in the manual page. . . +.SH ampctl +. +The +.BR ampctl (1) +utility is a recent addition to the Hamlib utilities as a part of the 4.0 +development cycle. +. +It is intended to test the Hamlib implementation of amplifier control and is +similar in function to the utilities previously described. +. +See the +.BR ampctl (1) +manual page for the complete reference. +. +. .SH rigctld . The @@ -698,6 +676,22 @@ The complete reference for rotctld can be found in the manual page. . . +.SH ampctl +. +The +.BR ampctld (1) +utility is a recent addition to the Hamlib utilities as a part of the 4.0 +development cycle. +. +It provides network socket access for the Hamlib implementation of amplifier +control and is similar in function to the network utilities previously +described. +. +See the +.BR ampctld (1) +manual page for the complete reference. +. +. .SH rigmem . .B rigmem @@ -803,7 +797,7 @@ radio and rotator control functions for developers of software primarily of interest to radio amateurs and those interested in radio communications. . .PP -Copyright \(co 2001-2018 Hamlib Group (various contributors) +Copyright \(co 2001-2020 Hamlib Group (various contributors) . .PP This is free software; see the file COPYING for copying conditions. There is @@ -814,6 +808,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. . .BR less (1), .BR more (1), +.BR ampctl (1), +.BR ampctld (1), .BR rigctl (1), .BR rigctld (1), .BR rotctl (1), @@ -828,8 +824,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH COLOPHON . Links to the Hamlib Wiki, Git repository, release archives, and daily snapshot -archives: -.IP +archives are available via +. .UR http://www.hamlib.org hamlib.org .UE . diff --git a/doc/man7/hamlib.7 b/doc/man7/hamlib.7 index 58988ed8..f7c715cb 100644 --- a/doc/man7/hamlib.7 +++ b/doc/man7/hamlib.7 @@ -5,7 +5,7 @@ .\" .\" Please keep this file in sync with doc/nutshell.texi .\" -.TH HAMLIB "7" "2018-05-21" "Hamlib" "Hamlib Information Manual" +.TH HAMLIB "7" "2020-09-08" "Hamlib" "Hamlib Information Manual" . . .SH NAME @@ -153,20 +153,21 @@ in a few years. A major milestone was reached when Hamlib 1.2.0 was released in March 2004. . The API and Application Binary Interface (ABI) interfaces have remained stable -since that time up to the latest release of 3.2 in early 2018. +since that time up to the release of 3.3 in mid 2018. +. +Version 4.0 marks a major change to the ABI and certain changes to the API. . .PP Development continues through the major version number -.RI 3. x +.RI 4. x series and beyond. . -While some API tweaks are planned, ABI compatibility with the prior -.RI 1.2. x -releases remains a priority. +The 4.0 release marks a major change in the ABI with several changes for +additional modes and such that will require client programs that use the C ABI +to be recompiled/relinked, etc. . -Other goals include streamlining the build system (done), improving the SWIG -generated language bindings (done), improving the overall documentation (this -man page with more in progress), and other updates as warranted. +Other goals include improving the overall documentation (this man page with +more in progress), and other updates as warranted. . .PP The Project is hosted by @@ -255,28 +256,37 @@ atmosphere for development. Hamlib's source code is released under two licenses, the .B Lesser General Public License -(LGPL) for the library portion, and the +(LGPL) version 2.1 for the library portion, and the .B General Public License -(GPL) for the utility programs. +(GPL) version 2 for the utility programs. . .PP The LGPL allows the library to be used (linked) by programs regardless of their individual license. . -However, any contributions to the library source remain under copyleft which -means that the library source code may not be used in violation of the terms -of the LGPL. +However, any contributions to the library source remain under a copyleft +license which means that the library source code may not be used in violation +of the terms of the LGPL (see the file +.B COPYING.LIB +in the main source directory). +. +Concepts learned by studying these sources for the purpose of understanding +the Hamlib API is not covered nor prohibited by the LGPL, however, directly +copying LGPL sources into any work that is incompatible with the terms of the +LGPL is a violation of the terms of the license. . .PP The utility program source files are released under the GPL. . Any direct use of these sources must be in a form that complies with the terms -of the GPL. +of the GPL (see the file +.B COPYING +in the main source directory). . Concepts learned by studying these sources for the purpose of understanding the Hamlib API is not covered nor prohibited by the GPL, however, directly copying GPL sources into any work that is incompatible with the terms of the -GPL is prohibited. +GPL is a violation of the terms of the license. . . .SS Radios with a clone capability @@ -289,11 +299,11 @@ for cloning the memory contents from radio to another of the same model. . A related project, .UR http://chirp.danplanet.com -CHIRP +.B Chirp .UE , aims to support radios with such a clone capability. . -Please contact the CHIRP project for support of such radios. +Please contact the Chirp project for support of such radios. . . .SS Pronouncing Hamlib @@ -319,11 +329,12 @@ If you're French, the above does not apply! :-) .SH COPYING . This file is part of Hamlib, a project to develop a library that simplifies -radio and rotator control functions for developers of software primarily of -interest to radio amateurs and those interested in radio communications. +radio, rotator, and amplifier control functions for developers of software +primarily of interest to radio amateurs and those interested in radio +communications. . .PP -Copyright \(co 2001-2018 Hamlib Group (various contributors) +Copyright \(co 2001-2020 Hamlib Group (various contributors) . .PP This is free software; see the file COPYING for copying conditions. There is @@ -338,8 +349,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH COLOPHON . Links to the Hamlib Wiki, Git repository, release archives, and daily snapshot -archives: -.IP +archives are available via +. .UR http://www.hamlib.org hamlib.org .UE . commit 5e7b46eeeea9bbed648da059c0e428cc8c807a02 Author: Nate Bargmann <n0...@n0...> Date: Thu Sep 10 08:36:57 2020 -0500 Update utilities man pages for Hamlib 4.0 diff --git a/doc/man1/ampctl.1 b/doc/man1/ampctl.1 index e44ebcc8..01bcc00f 100644 --- a/doc/man1/ampctl.1 +++ b/doc/man1/ampctl.1 @@ -5,7 +5,7 @@ .\" .\" Note: Please keep this page in sync with the source, ampctl.c .\" -.TH AMPCTL "1" "2019-12-10" "Hamlib" "Hamlib Utilities" +.TH AMPCTL "1" "2020-09-08" "Hamlib" "Hamlib Utilities" . . .SH NAME @@ -249,12 +249,12 @@ typed in when in interactive mode or provided as argument(s) in command line interface mode. In interactive mode commands and their arguments may be entered on a single line: . -.sp -.RS 0.5i +.PP +.in +4n .EX -F 14250000 +.B F 14250000 .EE -.RE +.in . .PP Since most of the @@ -274,7 +274,7 @@ backslash, \(oq\\\(cq, to enter a long command name. Example: Use \(lq\\dump_caps\(rq to see what capabilities this amplifier and backend support. . -.PP +.IP .BR Note : The backend for the amplifier to be controlled, or the amplifier itself may not support some commands. In that case, the operation will fail with a @@ -283,22 +283,22 @@ error message. . . .PP -A simple example: +A simple example using commands saved to a file (typed text shown in bold): . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ cat <<.EOF. >cmds.txt -> # File of commands -> F 14250000 -> f -> l PWRINPUT -> l PWRFORWARD -> l SWR -> \\dump_caps -> .EOF. +.RB $ " cat <<.EOF. >cmds.txt" +.RB > " # File of commands" +.RB > " F 14250000" +.RB > " f" +.RB > " l PWRINPUT" +.RB > " l PWRFORWARD" +.RB > " l SWR" +> \fB\\dump_caps\fP +.RB > " .EOF." -$ ampctl -m1 - <cmds.txt +.RB $ " ampctl -m1 - <cmds.txt" Amplifier command: # File of commands @@ -344,7 +344,7 @@ Amplifier command: $ .EE -.RE +.in . . .SS ampctl Commands @@ -573,19 +573,19 @@ if an error was returned by .BR Hamlib . . . -.SH EXAMPLE +.SH EXAMPLES . Start .B ampctl for am Elecraft KPA-1500 using a USB to serial adapter on Linux in interactive mode: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ ampctl -m 201 -r /dev/ttyUSB1 +.RB $ " ampctl -m 201 -r /dev/ttyUSB1" .EE -.RE +.in . .PP Start @@ -594,12 +594,12 @@ for an Elecraft KPA-1500 using COM1 on MS Windows while generating TRACE output to .IR stderr : . -.sp -.RS 0.5i +.PP +.in +4n .EX -> ampctl -m 201 -r COM1 -vvvvv +.RB > " ampctl -m 201 -r COM1 -vvvvv" .EE -.RE +.in . .PP Connect to a running @@ -607,12 +607,12 @@ Connect to a running with amplifier model 2 (\(lqNET ampctl\(rq) on the local host and specifying the TCP port, setting frequency and mode: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ ampctl -m 2 -r localhost:4531 F 7253500 +.RB $ " ampctl -m 2 -r localhost:4531 F 7253500" .EE -.RE +.in . . .SH BUGS @@ -640,7 +640,7 @@ Copyright \(co 2000-2011 Stephane Fillod .br Copyright \(co 2000-2018 the Hamlib Group (various contributors) .br -Copyright \(co 2010-2019 Nate Bargmann +Copyright \(co 2010-2020 Nate Bargmann . .PP This is free software; see the file COPYING for copying conditions. There is @@ -658,8 +658,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH COLOPHON . Links to the Hamlib Wiki, Git repository, release archives, and daily snapshot -archives: -.IP +archives are available via +. .UR http://www.hamlib.org hamlib.org .UE . diff --git a/doc/man1/ampctld.1 b/doc/man1/ampctld.1 index 5c66324a..31d97844 100644 --- a/doc/man1/ampctld.1 +++ b/doc/man1/ampctld.1 @@ -5,7 +5,7 @@ .\" .\" Note: Please keep this page in sync with the source, ampctld.c .\" -.TH AMPCTLD "1" "2019-12-10" "Hamlib" "Hamlib Utilities" +.TH AMPCTLD "1" "2020-09-09" "Hamlib" "Hamlib Utilities" . . .SH NAME @@ -402,16 +402,15 @@ needed values. In practice, reliable results are obtained by terminating each command string with a newline character, \(oq\\n\(cq. . .PP -Example set frequency and mode commands (Perl code): +Example set frequency and mode commands (Perl code (typed text shown in bold)): . -.sp -.RS 0.5i +.PP +.in +4n .EX -print $socket "F 14250000\\n"; -.br -print $socket "\\\\set_powerstat 1\\n"; # escape leading '\\' +\fBprint $socket "F 14250000\\n";\fP +\fBprint $socket "\\\\set_powerstat 1\\n";\fP # escape leading '\\' .EE -.RE +.in . .PP A one line response will be sent as a reply to @@ -434,14 +433,13 @@ is the Hamlib error code. .PP Example get frequency (Perl code): . -.sp -.RS 0.5i +.PP +.in +4n .EX -print $socket "f\\n"; -.br +\fBprint $socket "f\\n";\fP "14250000\\n" .EE -.RE +.in . .PP Most @@ -509,16 +507,14 @@ An example response to a .B set_frequency command sent from the shell prompt (note the prepended \(oq+\(cq): . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ echo "+F 14250000" | nc -w 1 localhost 4531 -.br +$ \fBecho "+F 14250000" | nc -w 1 localhost 4531\fP set_freq: 14250000 -.br RPRT 0 .EE -.RE +.in . .PP In this case the long command name and values are returned on the first line @@ -530,18 +526,15 @@ An example response to a .B get_freq query: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ echo "+\\get_freq" | nc -w 1 localhost 4531 -.br +$ \fBecho "+\\get_freq" | nc -w 1 localhost 4531\fP get_freq: -.br Frequency(Hz): 14250000 -.br RPRT 0 .EE -.RE +.in . .IP .BR Note : @@ -600,34 +593,34 @@ For example, invoking a .B get_freq query with a leading \(oq;\(cq returns: . -.sp -.RS 0.5i +.PP +.in +4n .EX get_freq:;Frequency(Hz): 14250000;RPRT 0 .EE -.RE +.in . .PP Or, using the pipe character \(oq|\(cq returns: . -.sp -.RS 0.5i +.PP +.in +4n .EX get_freq:|Frequency(Hz): 14250000|RPRT 0 .EE -.RE +.in . .PP And a .B set_freq command prepended with a \(oq|\(cq returns: . -.sp -.RS 0.5i +.PP +.in +4n .EX set_freq: 14250000|RPRT 0 .EE -.RE +.in . .PP Such a format will allow reading a response as a single event using a preferred @@ -659,30 +652,30 @@ sent to and received from the amplifier which is very useful for amplifier backend library development and may be requested by the developers. . . -.SH EXAMPLE +.SH EXAMPLES . Start .B ampctld for an Elecraft KPA-1500 using a USB-to-serial adapter and backgrounding: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ ampctld -m 201 -r /dev/ttyUSB1 & +.RB $ " ampctld -m 201 -r /dev/ttyUSB1 &" .EE -.RE +.in . .PP Start .B ampctld for an Elecraft KPA-1500 using COM2 on MS Windows: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ ampctld -m 201 -r COM2 +.RB $ " ampctld -m 201 -r COM2" .EE -.RE +.in . .PP Connect to the already running @@ -690,12 +683,12 @@ Connect to the already running and set the frequency to 14.266 MHz with a 1 second read timeout using the default protocol from the shell prompt: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ echo "\\set_freq 14266000" | nc -w 1 localhost 4531 +$ \fBecho "\\set_freq 14266000" | nc -w 1 localhost 4531\fP .EE -.RE +.in . .PP Connect to a running @@ -704,12 +697,12 @@ with .B ampctl on the local host: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ ampctl -m2 +.RB $ " ampctl -m2" .EE -.RE +.in . . .SH SECURITY @@ -765,7 +758,7 @@ Copyright \(co 2000-2010 Stephane Fillod .br Copyright \(co 2000-2018 the Hamlib Group (various contributors) .br -Copyright \(co 2011-2019 Nate Bargmann +Copyright \(co 2011-2020 Nate Bargmann . .PP This is free software; see the file COPYING for copying conditions. There is @@ -783,8 +776,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH COLOPHON . Links to the Hamlib Wiki, Git repository, release archives, and daily snapshot -archives: -.IP +archives are available via +. .UR http://www.hamlib.org hamlib.org .UE . diff --git a/doc/man1/rigctl.1 b/doc/man1/rigctl.1 index c57eaf44..ff0b3c6b 100644 --- a/doc/man1/rigctl.1 +++ b/doc/man1/rigctl.1 @@ -5,7 +5,7 @@ .\" .\" Note: Please keep this page in sync with the source, rigctl.c .\" -.TH RIGCTL "1" "2019-12-10" "Hamlib" "Hamlib Utilities" +.TH RIGCTL "1" "2020-09-09" "Hamlib" "Hamlib Utilities" . . .SH NAME @@ -284,7 +284,7 @@ Set verbose mode, cumulative (see below). .TP .BR \-Y "," \-\-\ignore\-err -Ignores rig open errors +Ignores rig open errors . .TP .BR \-Z ", " \-\-debug\-time\-stamps @@ -337,12 +337,12 @@ typed in when in interactive mode or provided as argument(s) in command line interface mode. In interactive mode commands and their arguments may be entered on a single line: . -.sp -.RS 0.5i +.PP +.in +4n .EX -M LSB 2400 +.B M LSB 2400 .EE -.RE +.in . .PP Since most of the @@ -360,7 +360,7 @@ backslash, \(oq\\\(cq, to enter a long command name. Example: Use \(lq\\dump_caps\(rq to see what capabilities this radio and backend support. . -.PP +.IP .BR Note : The backend for the radio to be controlled, or the radio itself may not support some commands. In that case, the operation will fail with a @@ -383,19 +383,19 @@ up until the end of the current line including the \(oq#\(cq character is ignored. . .PP -A simple example: +A simple example (typed text is in bold): . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ cat <<.EOF. >cmds.txt -> # File of commands -> v f m # query rig -> V VFOB F 14200000 M CW 500 # set rig -> v f m # query rig -> .EOF. +.RB $ " cat <<.EOF. >cmds.txt" +.RB > " # File of commands" +.RB > " v f m # query rig" +.RB > " V VFOB F 14200000 M CW 500 # set rig" +.RB > " v f m # query rig" +.RB > " .EOF." -$ rigctl -m1 - <cmds.txt +.RB $ " rigctl -m1 - <cmds.txt" v VFOA @@ -416,7 +416,7 @@ m CW $ .EE -.RE +.in . . .SS rigctl Commands @@ -498,17 +498,17 @@ In VFO mode (see .B \-\-vfo option above) only a single VFO parameter is required: . -.sp -.RS 1.0i +.IP +.in +4n .EX -$ rigctl -m 229 -r /dev/rig -o +.RB $ " rigctl -m 229 -r /dev/rig -o" Rig command: V VFO: VFOB Rig command: .EE -.RE +.in . .TP .BR v ", " get_vfo @@ -1119,7 +1119,7 @@ Get .RI \(aq Status \(aq .IP Returns Status as 1 if vfo option is on and 0 if vfo option is off. -This command reflects the -o switch for rigctl and ritctld and can be dynamically changed by +This command reflects the -o switch for rigctl and ritctld and can be dynamically changed by .B set_vfo_opt. . .TP @@ -1128,7 +1128,7 @@ Set .RI \(aq Status \(aq .IP Set vfo option Status 1=on or 0=off -This is the same as using the -o switch for rigctl and ritctld. +This is the same as using the -o switch for rigctl and ritctld. This can be dyamically changed while running. . .TP @@ -1252,18 +1252,18 @@ if an error was returned by .BR Hamlib . . . -.SH EXAMPLE +.SH EXAMPLES . Start .B rigctl for a Yaesu FT-920 using a USB to serial adapter on Linux in interactive mode: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ rigctl -m 114 -r /dev/ttyUSB1 +.RB $ " rigctl -m 1014 -r /dev/ttyUSB1" .EE -.RE +.in . .PP Start @@ -1271,12 +1271,12 @@ Start for a Yaesu FT-920 using COM1 on MS Windows while generating TRACE output to .IR stderr : . -.sp -.RS 0.5i +.PP +.in +4n .EX -> rigctl -m 114 -r COM1 -vvvvv +.RB > " rigctl -m 1014 -r COM1 -vvvvv" .EE -.RE +.in . .PP Start @@ -1284,12 +1284,12 @@ Start for a Yaesu FT-920 using a USB to serial adapter while setting baud rate and stop bits: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ rigctl -m 114 -r /dev/ttyUSB1 -s 4800 -C stop_bits=2 +.RB $ " rigctl -m 1014 -r /dev/ttyUSB1 -s 4800 -C stop_bits=2" .EE -.RE +.in . .PP Start @@ -1299,12 +1299,12 @@ terminator for the .B w command: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ rigctl -m 229 -r /dev/ttyUSB0 -t';' +.RB $ " rigctl -m 2029 -r /dev/ttyUSB0 -t';'" .EE -.RE +.in . .PP Connect to a running @@ -1312,12 +1312,12 @@ Connect to a running with radio model 2 (\(lqNET rigctl\(rq) on the local host and specifying the TCP port, setting frequency and mode: . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ rigctl -m 2 -r localhost:4532 F 7253500 M LSB 0 +.RB $ " rigctl -m 2 -r localhost:4532 F 7253500 M LSB 0" .EE -.RE +.in . . .SH BUGS @@ -1348,7 +1348,7 @@ Copyright \(co 2000-2011 Stephane Fillod .br Copyright \(co 2000-2018 the Hamlib Group (various contributors) .br -Copyright \(co 2010-2019 Nate Bargmann +Copyright \(co 2010-2020 Nate Bargmann . .PP This is free software; see the file COPYING for copying conditions. There is @@ -1366,8 +1366,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH COLOPHON . Links to the Hamlib Wiki, Git repository, release archives, and daily snapshot -archives: -.IP +archives are available via +. .UR http://www.hamlib.org hamlib.org .UE . diff --git a/doc/man1/rigctlcom.1 b/doc/man1/rigctlcom.1 index 305ffdbf..7d63037d 100644 --- a/doc/man1/rigctlcom.1 +++ b/doc/man1/rigctlcom.1 @@ -5,7 +5,7 @@ .\" .\" Note: Please keep this page in sync with the source, rigctlcom.c .\" -.TH RIGCTLCOM "1" "2019-12-10" "Hamlib" "Hamlib Utilities" +.TH RIGCTLCOM "1" "2020-09-09" "Hamlib" "Hamlib Utilities" . . .SH NAME @@ -108,12 +108,12 @@ to the other com port of the virtual pair. Virtual serial ports on POSIX systems can be done with .BR socat (1): . -.sp -.RS 1.0i +.IP +.in +4n .EX -$ socat -d -d pty,raw,echo=0 pty,raw,echo=0 +.RB $ " socat -d -d pty,raw,echo=0 pty,raw,echo=0" .EE -.RE +.in . .IP See this @@ -342,23 +342,23 @@ attaching to COM10 and using the TS-2000 emulator attached to COM9 (assumes virtual serial/COM ports pipe has been created with the proper utility as described above): . -.sp -.RS 0.5i +.PP +.in +4n .EX -$ rigctlcom -m 4 -R COM9 -S 115200 +.RB $ " rigctlcom -m 4 -R COM9 -S 115200" .EE -.RE +.in . .PP The following diagram shows the communications flow that allows N1MM Logger+ to communicate with a radio connected to Flrig: . -.sp -.RS 0.5i +.PP +.in +4n .EX Flrig -><- rigctlcom -> COM9 <- virt_port_pipe -> COM10 <- N1MM .EE -.RE +.in . . .SH BUGS @@ -385,7 +385,7 @@ Copyright \(co 2000-2011 Stephane Fillod .br Copyright \(co 2000-2018 the Hamlib Group (various contributors) .br -Copyright \(co 2010-2019 Nate Bargmann +Copyright \(co 2010-2020 Nate Bargmann .br Copyright \(co 2019 Michael Black W9MDB . @@ -405,8 +405,8 @@ NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH COLOPHON . Links to the Hamlib Wiki, Git repository, release archives, and daily snapshot -archives: -.IP +archives are available via +. .UR http://www.hamlib.org hamlib.org .UE . diff --git a/doc/man1/rigctld.1 b/doc/man1/rigctld.1 index 5813636a..959b2425 100644 --- a/doc/man1/rigctld.1 +++ b/doc/man1/rigctld.1 @@ -5,7 +5,7 @@ .\" .\" Note: Please keep this page in sync with the source, rigctld.c .\" -.TH RIGCTLD "1" "2019-12-10" "Hamlib" "Hamlib Utilities" +.TH RIGCTLD "1" "2020-09-09" "Hamlib" "Hamlib Utilities" . . .SH NAME @@ -207,35 +207,58 @@ Use .I IPADDR as the listening IP address. .IP -The default is ANY. +The default is ANY (0.0.0.0). .IP -Can be run and connected to like this: +.B rigctld +can be run and connected to like this: +. .IP -.nf +.EX rigctld - rigctl -m 2 - rigctl -m 2 -r 127.0.0.1 - rigctl -m 2 -r localhost - rigctl -m 2 -r 192.168.1.1 (local IP address) - rigctl -m 2 -r ::1 (does not work on Linux as does not listen on IPV6 by default) -.BR +. +.in +4n +rigctl -m 2 +rigctl -m 2 -r 127.0.0.1 +rigctl -m 2 -r localhost +rigctl -m 2 -r 192.168.1.1 (local IP address) +rigctl -m 2 -r ::1 (on Linux rigctld doesn't listen on IPV6 by default) +.in +. +.IP rigctld -T 127.0.0.1 - rigctl -m 2 - rigctl -m 2 -r 127.0.0.1 - Exceptions: - rigctl -m 2 -r localhost (only works if localhost is IPV4 address) -.BR +.in +4n +rigctl -m 2 +rigctl -m 2 -r 127.0.0.1 +.EE +Exceptions: +.EX +rigctl -m 2 -r localhost (only works if localhost is IPV4 address) +.EE +.in +. +.IP +.EX rigctld -T localhost (will set up on IPV4 or IPV6 based on localhost) - rigctl -m 2 - rigctl -m 2 -r localhost - rigctl -m 2 ip6-localhost - Exceptions: - rigctl -m 2 -r 127.0.0.1 (only works if localhost is IPV4 address) - rigctl -m 2 -r ::1 (only works localhost is IPV6 address) -.BR -On Linux only where ip6-localhost fe00::0 +.in +4n +rigctl -m 2 +rigctl -m 2 -r localhost +rigctl -m 2 ip6-localhost +.EE +Exceptions: +.EX +rigctl -m 2 -r 127.0.0.1 (only works if localhost is IPV4 address) +rigctl -m 2 -r ::1 (only works localhost is IPV6 address) +.EE +.in +. +.IP +On Linux only where ip6-localhost is fe00::0: +.EX rigctld -T ip6-localhost - rigctl -m 2 -r ip6-localhost +.in +4n +rigctl -m 2 -r ip6-localhost +.in +.EE . .TP .BR \-t ", " \-\-port = \fInumber\fP @@ -460,8 +483,8 @@ In VFO mode (see .B \-\-vfo option above) only a single VFO parameter is required: . -.sp -.RS 1.0i +.IP +.in +4n .EX $ rigctl -m 229 -r /dev/rig -o @@ -470,7 +493,7 @@ VFO: VFOB Rig command: .EE -.RE +.in . .TP .BR v ", " get_vfo @@ -1049,7 +1072,7 @@ Set .RI \(aq Status \(aq .IP Set vfo option Status 1=on or 0=off -This is the same as using the -o switch for rigctl and ritctld. +This is the same as using the -o switch for rigctl and ritctld. This can be dyamically changed while running. . . @@ -1089,16 +1112,15 @@ needed values. In practice, reliable results are obtained by terminating each command string with a newline character, \(oq\\n\(cq. . .PP -Example set frequency and mode commands (Perl code): +Example set frequency and mode commands (Perl code (typed text shown in bold)): . -.sp -.RS 0.5i +.PP +.in +4n .EX -print $socket "F 14250000\\n"; -.br -print $socket "\\\\set_mode LSB 2400\\n"; # escape leading '\\' +\fBprint $socket "F 14250000\\n";\fP +\fBprint $socket "\\\\set_mode LSB 2400\\n";\fP # escape leading '\\' .EE -.RE +.in . .PP A one line response will be sent as a reply to @@ -1121,14 +1143,13 @@ is the Hamlib error... [truncated message content] |