Handle Yaesu rigs rejecting IF shift command without retries

pull/435/head
Mikael Nousiainen 2020-11-07 19:47:08 +02:00
rodzic 7cbe39d5ab
commit 88cec8450c
1 zmienionych plików z 17 dodań i 2 usunięć

Wyświetl plik

@ -2920,6 +2920,8 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
priv->cmd_str[2] = main_sub_vfo; priv->cmd_str[2] = main_sub_vfo;
} }
// Some Yaesu rigs reject IF shift command in AM/FM modes
priv->question_mark_response_means_rejected = 1;
break; break;
case RIG_LEVEL_CWPITCH: { case RIG_LEVEL_CWPITCH: {
@ -3526,7 +3528,12 @@ int newcat_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
return -RIG_EINVAL; return -RIG_EINVAL;
} }
return newcat_set_cmd(rig); err = newcat_set_cmd(rig);
// Clear flag after executing command
priv->question_mark_response_means_rejected = 0;
return err;
} }
@ -3616,6 +3623,9 @@ int newcat_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
{ {
priv->cmd_str[2] = main_sub_vfo; priv->cmd_str[2] = main_sub_vfo;
} }
// Some Yaesu rigs reject IF shift command in AM/FM modes
priv->question_mark_response_means_rejected = 1;
break; break;
case RIG_LEVEL_CWPITCH: case RIG_LEVEL_CWPITCH:
@ -3889,7 +3899,12 @@ int newcat_get_level(RIG *rig, vfo_t vfo, setting_t level, value_t *val)
return -RIG_EINVAL; return -RIG_EINVAL;
} }
if (RIG_OK != (err = newcat_get_cmd(rig))) err = newcat_get_cmd(rig);
// Clear flag after executing command
priv->question_mark_response_means_rejected = 0;
if (err != RIG_OK)
{ {
return err; return err;
} }