Fixing AF RFWPOWER and STRENGTH for TS480

https://github.com/Hamlib/Hamlib/issues/553
pull/555/head
Michael Black W9MDB 2021-02-19 22:49:46 -06:00
rodzic a6da45eb8b
commit 83c75fa8c6
2 zmienionych plików z 16 dodań i 12 usunięć

Wyświetl plik

@ -2322,7 +2322,7 @@ static int kenwood_get_power_minmax(RIG *rig, int *power_now, int *power_min,
rig_debug(RIG_DEBUG_TRACE, "%s: retval=%d\n", __func__, retval);
if (RIG_IS_TS890S)
if (RIG_IS_TS890S || RIG_IS_TS480)
{
expval = 6;
}
@ -2677,7 +2677,7 @@ int kenwood_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
break;
case RIG_LEVEL_STRENGTH:
if (RIG_IS_TS590S || RIG_IS_TS590SG)
if (RIG_IS_TS590S || RIG_IS_TS590SG || RIG_IS_TS480)
{
cmd = "SM0";
len = 3;

Wyświetl plik

@ -119,7 +119,7 @@ kenwood_ts480_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
return kenwood_set_level(rig, vfo, level, val);
case RIG_LEVEL_RF:
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
rf_max_level = 255;
}
@ -132,7 +132,7 @@ kenwood_ts480_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
case RIG_LEVEL_SQL:
kenwood_val = val.f * 255; /* possible values for TS480 are 000.. 255 */
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
sprintf(levelbuf, "SQ%03d", kenwood_val);
}
@ -148,7 +148,7 @@ kenwood_ts480_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
/* hamlib argument is int, possible values rig.h:enum agc_level_e */
/* possible values for TS480 000(=off), 001(=fast), 002(=slow) */
/* possible values for TS890 0(=off), 1(=slow), 2(=mid), 3(=fast), 4(=off/Last) */
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
rig_debug(RIG_DEBUG_VERBOSE, "%s TS890S RIG_LEVEL_AGC\n", __func__);
@ -220,7 +220,7 @@ kenwood_ts480_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
/*
* kenwood_get_level
* kenwood_ts480_get_level
* Assumes rig!=NULL, val!=NULL
*/
int
@ -235,7 +235,7 @@ kenwood_ts480_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
rig_debug(RIG_DEBUG_TRACE, "%s called\n", __func__);
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S || RIG_IS_TS480)
{
rf_max_level = 255;
}
@ -247,7 +247,7 @@ kenwood_ts480_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
switch (level)
{
case RIG_LEVEL_AF:
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
retval = kenwood_transaction(rig, "AG", ackbuf, sizeof(ackbuf));
offset_level = 2;
@ -279,6 +279,10 @@ kenwood_ts480_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
return RIG_OK;
case RIG_LEVEL_RF:
if (RIG_IS_TS480)
{
rf_max_level = 100;
}
retval = kenwood_transaction(rig, "RG", ackbuf, sizeof(ackbuf));
if (RIG_OK != retval)
@ -302,7 +306,7 @@ kenwood_ts480_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
return RIG_OK;
case RIG_LEVEL_SQL:
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
retval = kenwood_transaction(rig, "SQ", ackbuf, sizeof(ackbuf));
ack_len_expected = 5;
@ -334,7 +338,7 @@ kenwood_ts480_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
return RIG_OK;
case RIG_LEVEL_AGC:
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
retval = kenwood_transaction(rig, "GC", ackbuf, sizeof(ackbuf));
ack_len_expected = 3;
@ -364,7 +368,7 @@ kenwood_ts480_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
break;
case '1':
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
val->i = RIG_AGC_SLOW;
}
@ -376,7 +380,7 @@ kenwood_ts480_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
break;
case '2':
if (rig->caps->rig_model == RIG_MODEL_TS890S)
if (RIG_IS_TS890S)
{
val->i = RIG_AGC_MEDIUM;
}