kopia lustrzana https://github.com/Hamlib/Hamlib
rodzic
f2f5c9a1af
commit
fd8c05b01d
|
@ -435,7 +435,7 @@ const struct rig_caps ftdx101d_caps =
|
||||||
RIG_MODEL(RIG_MODEL_FTDX101D),
|
RIG_MODEL(RIG_MODEL_FTDX101D),
|
||||||
.model_name = "FT-DX101D",
|
.model_name = "FT-DX101D",
|
||||||
.mfg_name = "Yaesu",
|
.mfg_name = "Yaesu",
|
||||||
.version = NEWCAT_VER ".2",
|
.version = NEWCAT_VER ".3",
|
||||||
.copyright = "LGPL",
|
.copyright = "LGPL",
|
||||||
.status = RIG_STATUS_STABLE,
|
.status = RIG_STATUS_STABLE,
|
||||||
.rig_type = RIG_TYPE_TRANSCEIVER,
|
.rig_type = RIG_TYPE_TRANSCEIVER,
|
||||||
|
@ -468,7 +468,7 @@ const struct rig_caps ftdx101d_caps =
|
||||||
.attenuator = { 6, 12, 18, RIG_DBLST_END, },
|
.attenuator = { 6, 12, 18, RIG_DBLST_END, },
|
||||||
.max_rit = Hz(9999),
|
.max_rit = Hz(9999),
|
||||||
.max_xit = Hz(9999),
|
.max_xit = Hz(9999),
|
||||||
.max_ifshift = Hz(1000),
|
.max_ifshift = Hz(1200),
|
||||||
.vfo_ops = FTDX5000_VFO_OPS,
|
.vfo_ops = FTDX5000_VFO_OPS,
|
||||||
.targetable_vfo = RIG_TARGETABLE_FREQ | RIG_TARGETABLE_MODE | RIG_TARGETABLE_FUNC | RIG_TARGETABLE_PURE,
|
.targetable_vfo = RIG_TARGETABLE_FREQ | RIG_TARGETABLE_MODE | RIG_TARGETABLE_FUNC | RIG_TARGETABLE_PURE,
|
||||||
.transceive = RIG_TRN_OFF, /* May enable later as the 5000 has an Auto Info command */
|
.transceive = RIG_TRN_OFF, /* May enable later as the 5000 has an Auto Info command */
|
||||||
|
|
|
@ -2624,7 +2624,7 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
|
||||||
{
|
{
|
||||||
return -RIG_ENAVAIL;
|
return -RIG_ENAVAIL;
|
||||||
}
|
}
|
||||||
|
rig_debug(RIG_DEBUG_TRACE, "%s: LEVEL_IF val.i=%d\n", __func__, val.i);
|
||||||
if (abs(val.i) > rig->caps->max_ifshift)
|
if (abs(val.i) > rig->caps->max_ifshift)
|
||||||
{
|
{
|
||||||
if (val.i > 0)
|
if (val.i > 0)
|
||||||
|
@ -2637,8 +2637,13 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
snprintf(priv->cmd_str, sizeof(priv->cmd_str), "IS0%+.4d%c", val.i,
|
if (is_ft101)
|
||||||
cat_term); /* problem with %+04d */
|
{
|
||||||
|
snprintf(priv->cmd_str, sizeof(priv->cmd_str), "IS%c0%+.4d%c", main_sub_vfo, val.i, cat_term);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
snprintf(priv->cmd_str, sizeof(priv->cmd_str), "IS%c%+.4d%c", main_sub_vfo, val.i, cat_term);
|
||||||
|
}
|
||||||
|
|
||||||
if (rig->caps->targetable_vfo & RIG_TARGETABLE_MODE && !is_ft2000)
|
if (rig->caps->targetable_vfo & RIG_TARGETABLE_MODE && !is_ft2000)
|
||||||
{
|
{
|
||||||
|
@ -3188,7 +3193,7 @@ int newcat_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
|
||||||
return -RIG_ENAVAIL;
|
return -RIG_ENAVAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
snprintf(priv->cmd_str, sizeof(priv->cmd_str), "IS0%c", cat_term);
|
snprintf(priv->cmd_str, sizeof(priv->cmd_str), "IS%c%c", main_sub_vfo, cat_term);
|
||||||
|
|
||||||
if (rig->caps->targetable_vfo & RIG_TARGETABLE_MODE)
|
if (rig->caps->targetable_vfo & RIG_TARGETABLE_MODE)
|
||||||
{
|
{
|
||||||
|
@ -3519,7 +3524,17 @@ int newcat_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
|
||||||
case RIG_LEVEL_RAWSTR:
|
case RIG_LEVEL_RAWSTR:
|
||||||
case RIG_LEVEL_KEYSPD:
|
case RIG_LEVEL_KEYSPD:
|
||||||
case RIG_LEVEL_IF:
|
case RIG_LEVEL_IF:
|
||||||
val->i = atoi(retlvl);
|
// IS00+0400
|
||||||
|
rig_debug(RIG_DEBUG_TRACE, "%s: ret_data=%s(%d), retlvl=%s\n", __func__, priv->ret_data, (int)strlen(priv->ret_data), retlvl);
|
||||||
|
if (strlen(priv->ret_data) == 9) {
|
||||||
|
int n = sscanf(priv->ret_data,"IS%*c0%d\n", &val->i);
|
||||||
|
if (n != 1) {
|
||||||
|
rig_debug(RIG_DEBUG_ERR, "%s: unable to parse level from %s\n", __func__, priv->ret_data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
val->i = atoi(retlvl);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RIG_LEVEL_NR:
|
case RIG_LEVEL_NR:
|
||||||
|
|
Ładowanie…
Reference in New Issue