kopia lustrzana https://github.com/Hamlib/Hamlib
Add some levels to TS590
rodzic
7eaabddcb5
commit
5e36d5c11b
|
@ -468,11 +468,73 @@ const char *ts590_get_info(RIG *rig)
|
|||
*/
|
||||
int ts590_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
|
||||
{
|
||||
int lvl_len;
|
||||
int retval;
|
||||
char lvlbuf[50];
|
||||
|
||||
rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__);
|
||||
|
||||
switch (level)
|
||||
{
|
||||
case RIG_LEVEL_AF:
|
||||
return get_kenwood_level(rig, "AG0", &val->f);
|
||||
|
||||
case RIG_LEVEL_METER:
|
||||
retval = kenwood_transaction (rig, "RM0", lvlbuf, sizeof (lvlbuf));
|
||||
if (retval != RIG_OK)
|
||||
return retval;
|
||||
lvl_len = strlen (lvlbuf);
|
||||
if (lvl_len != 7) {
|
||||
rig_debug(RIG_DEBUG_ERR,"ts590_get_level: "
|
||||
"unexpected answer len=%d\n", lvl_len);
|
||||
return -RIG_ERJCTED;
|
||||
}
|
||||
// returns the raw value in dots
|
||||
sscanf(lvlbuf+3, "%d", &val->i);
|
||||
return retval;
|
||||
|
||||
case RIG_LEVEL_SWR:
|
||||
retval = kenwood_transaction (rig, "RM1", lvlbuf, sizeof (lvlbuf));
|
||||
if (retval != RIG_OK)
|
||||
return retval;
|
||||
lvl_len = strlen (lvlbuf);
|
||||
if (lvl_len != 7) {
|
||||
rig_debug(RIG_DEBUG_ERR,"ts590_get_level: "
|
||||
"unexpected answer len=%d\n", lvl_len);
|
||||
return -RIG_ERJCTED;
|
||||
}
|
||||
// returns the raw value in dots
|
||||
sscanf(lvlbuf+3, "%d", &val->i);
|
||||
return retval;
|
||||
|
||||
case RIG_LEVEL_COMP:
|
||||
retval = kenwood_transaction (rig, "RM2", lvlbuf, sizeof (lvlbuf));
|
||||
if (retval != RIG_OK)
|
||||
return retval;
|
||||
lvl_len = strlen (lvlbuf);
|
||||
if (lvl_len != 7) {
|
||||
rig_debug(RIG_DEBUG_ERR,"ts590_get_level: "
|
||||
"unexpected answer len=%d\n", lvl_len);
|
||||
return -RIG_ERJCTED;
|
||||
}
|
||||
// returns the raw value in dots
|
||||
sscanf(lvlbuf+3, "%d", &val->i);
|
||||
return retval;
|
||||
|
||||
case RIG_LEVEL_ALC:
|
||||
retval = kenwood_transaction (rig, "RM3", lvlbuf, sizeof (lvlbuf));
|
||||
if (retval != RIG_OK)
|
||||
return retval;
|
||||
lvl_len = strlen (lvlbuf);
|
||||
if (lvl_len != 7) {
|
||||
rig_debug(RIG_DEBUG_ERR,"ts590_get_level: "
|
||||
"unexpected answer len=%d\n", lvl_len);
|
||||
return -RIG_ERJCTED;
|
||||
}
|
||||
// returns the raw value in dots
|
||||
sscanf(lvlbuf+3, "%d", &val->i);
|
||||
return retval;
|
||||
|
||||
default: return rig_get_level(rig, vfo, level, val);
|
||||
}
|
||||
}
|
||||
|
|
Ładowanie…
Reference in New Issue