pull/252/head
Michael Black W9MDB 2020-05-12 12:22:51 -05:00
commit 6a199559fa
3 zmienionych plików z 92 dodań i 30 usunięć

Wyświetl plik

@ -474,7 +474,7 @@ const struct rig_caps ic9700_caps =
// Hopefully any future changes in bandplans can be fixed with firmware updates
// So we use the global REGION2 macros in here
.rx_range_list1 = { // USA Version
.rx_range_list1 = { // USA Version -- United States
{MHz(144), MHz(148), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "USA"},
{MHz(430), MHz(450), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "USA"},
{MHz(1240), MHz(1300), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "USA"},
@ -490,7 +490,7 @@ const struct rig_caps ic9700_caps =
RIG_FRNG_END,
},
.rx_range_list2 = { // EUR Version
.rx_range_list2 = { // EUR Version -- Europe
{MHz(144), MHz(146), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "EUR"},
{MHz(430), MHz(440), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "EUR"},
{MHz(1240), MHz(1300), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "EUR"},
@ -506,7 +506,7 @@ const struct rig_caps ic9700_caps =
RIG_FRNG_END,
},
.rx_range_list3 = { // ITR Version
.rx_range_list3 = { // ITR Version -- Italy
{MHz(144), MHz(146), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "ITR"},
{MHz(430), MHz(434), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "ITR"},
{MHz(435), MHz(438), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "ITR"},
@ -528,7 +528,7 @@ const struct rig_caps ic9700_caps =
RIG_FRNG_END,
},
.rx_range_list4 = { // TPE Version
.rx_range_list4 = { // TPE Version -- Taiwan ??
{MHz(144), MHz(146), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "TPE"},
{MHz(430), MHz(432), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "TPE"},
{MHz(1260), MHz(1265), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "TPE"},
@ -544,7 +544,7 @@ const struct rig_caps ic9700_caps =
RIG_FRNG_END,
},
.rx_range_list5 = { // KOR Version
.rx_range_list5 = { // KOR Version -- Republic of Korea
{MHz(144), MHz(146), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "KOR"},
{MHz(430), MHz(440), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "KOR"},
{MHz(1260), MHz(1300), IC9700_ALL_RX_MODES, -1, -1, IC9700_VFOS, RIG_ANT_CURR, "KOR"},

Wyświetl plik

@ -3976,6 +3976,7 @@ int icom_get_split_freq(RIG *rig, vfo_t vfo, freq_t *tx_freq)
if (rig->caps->rig_model == RIG_MODEL_IC910)
{
<<<<<<< HEAD
ptt_t ptt;
rig_debug(RIG_DEBUG_VERBOSE, "%s: ic910#2\n", __func__);
retval = rig_get_ptt(rig, RIG_VFO_CURR, &ptt);
@ -3992,7 +3993,18 @@ int icom_get_split_freq(RIG *rig, vfo_t vfo, freq_t *tx_freq)
*tx_freq = priv->vfob_freq;
return RIG_OK;
}
}
=======
ptt_t ptt;
rig_debug(RIG_DEBUG_VERBOSE, "%s: ic910#2\n", __func__);
retval = rig_get_ptt(rig,RIG_VFO_CURR,&ptt);
if (retval != RIG_OK) {
return retval;
}
if (ptt) {
rig_debug(RIG_DEBUG_TRACE, "%s: ptt is on so returning last known freq\n", __func__);
*tx_freq = priv->vfob_freq;
return RIG_OK;
}
rig_debug(RIG_DEBUG_VERBOSE, "%s curr_vfo=%s\n", __func__,
rig_strvfo(priv->curr_vfo));

Wyświetl plik

@ -2162,9 +2162,15 @@ int HAMLIB_API rig_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
|| vfo == RIG_VFO_CURR
|| vfo == rig->state.current_vfo)
{
retcode = caps->get_ptt(rig, vfo, ptt);
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return caps->get_ptt(rig, vfo, ptt);
if (retcode == RIG_OK)
{
rig->state.cache.ptt = *ptt;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
}
return retcode;
}
if (!caps->set_vfo)
@ -2188,6 +2194,7 @@ int HAMLIB_API rig_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
{
/* return the first error code */
retcode = rc2;
rig->state.cache.ptt = *ptt;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
}
@ -2196,8 +2203,15 @@ int HAMLIB_API rig_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
case RIG_PTT_SERIAL_RTS:
if (caps->get_ptt)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return caps->get_ptt(rig, vfo, ptt);
retcode = caps->get_ptt(rig, vfo, ptt);
if (retcode == RIG_OK)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
return retcode;
}
if (strcmp(rs->pttport.pathname, rs->rigport.pathname)
@ -2206,25 +2220,29 @@ int HAMLIB_API rig_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
/* port is closed so assume PTT off */
*ptt = RIG_PTT_OFF;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
else
{
retcode = ser_get_rts(&rig->state.pttport, &status);
*ptt = status ? RIG_PTT_ON : RIG_PTT_OFF;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
rig->state.cache.ptt = *ptt;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return retcode;
case RIG_PTT_SERIAL_DTR:
if (caps->get_ptt)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return caps->get_ptt(rig, vfo, ptt);
retcode = caps->get_ptt(rig, vfo, ptt);
if (retcode == RIG_OK)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
return retcode;
}
if (strcmp(rs->pttport.pathname, rs->rigport.pathname)
@ -2233,46 +2251,78 @@ int HAMLIB_API rig_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
/* port is closed so assume PTT off */
*ptt = RIG_PTT_OFF;
rig->state.cache.ptt = *ptt;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
}
else
{
retcode = ser_get_dtr(&rig->state.pttport, &status);
*ptt = status ? RIG_PTT_ON : RIG_PTT_OFF;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
rig->state.cache.ptt = *ptt;
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return retcode;
case RIG_PTT_PARALLEL:
if (caps->get_ptt)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return caps->get_ptt(rig, vfo, ptt);
retcode = caps->get_ptt(rig, vfo, ptt);
if (retcode == RIG_OK)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
return retcode;
}
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return par_ptt_get(&rig->state.pttport, ptt);
retcode = par_ptt_get(&rig->state.pttport, ptt);
if (retcode == RIG_OK)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
return retcode;
case RIG_PTT_CM108:
if (caps->get_ptt)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return caps->get_ptt(rig, vfo, ptt);
retcode = caps->get_ptt(rig, vfo, ptt);
if (retcode == RIG_OK)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
return retcode;
}
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return cm108_ptt_get(&rig->state.pttport, ptt);
retcode = cm108_ptt_get(&rig->state.pttport, ptt);
if (retcode == RIG_OK)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
return retcode;
case RIG_PTT_GPIO:
case RIG_PTT_GPION:
if (caps->get_ptt)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
return caps->get_ptt(rig, vfo, ptt);
retcode = caps->get_ptt(rig, vfo, ptt);
if (retcode == RIG_OK)
{
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);
rig->state.cache.ptt = *ptt;
}
return retcode;
}
elapsed_ms(&rig->state.cache.time_ptt, ELAPSED_SET);