mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-27 14:48:46 -05:00
Improved diagnostic messages from Hamlib interface.
Cleaned up and standardized many the diagnostic messages from the Hamlib interface and added a few new ones for clarification. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4268 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
3ea0563e84
commit
91839b0340
@ -296,16 +296,20 @@ void HamlibTransceiver::init_rig ()
|
|||||||
// VFO is selected or if SPLIT is selected so we have to simply
|
// VFO is selected or if SPLIT is selected so we have to simply
|
||||||
// assume it is as when we started by setting at open time right
|
// assume it is as when we started by setting at open time right
|
||||||
// here. We also gather/set other initial state.
|
// here. We also gather/set other initial state.
|
||||||
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f1), tr ("getting current frequency"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_get_freq =" << f1;
|
qDebug () << "HamlibTransceiver::init_rig rig_get_freq";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f1), tr ("getting current frequency"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::init_rig rig_get_freq current frequency =" << f1;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting current mode"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_get_mode =" << m << "bw =" << w;
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode current mode";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting current mode"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode current mode =" << m << "bw =" << w;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (!rig_->caps->set_vfo)
|
if (!rig_->caps->set_vfo)
|
||||||
@ -316,7 +320,6 @@ void HamlibTransceiver::init_rig ()
|
|||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_vfo_op TOGGLE";
|
qDebug () << "HamlibTransceiver::init_rig rig_vfo_op TOGGLE";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_vfo_op (rig_.data (), RIG_VFO_CURR, RIG_OP_TOGGLE), tr ("exchanging VFOs"));
|
error_check (rig_vfo_op (rig_.data (), RIG_VFO_CURR, RIG_OP_TOGGLE), tr ("exchanging VFOs"));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -326,43 +329,42 @@ void HamlibTransceiver::init_rig ()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_set_vfo";
|
qDebug () << "HamlibTransceiver::init_rig rig_set_vfo to other VFO";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_set_vfo (rig_.data (), rig_->state.vfo_list & RIG_VFO_B ? RIG_VFO_B : RIG_VFO_SUB), tr ("setting current VFO"));
|
error_check (rig_set_vfo (rig_.data (), rig_->state.vfo_list & RIG_VFO_B ? RIG_VFO_B : RIG_VFO_SUB), tr ("setting current VFO"));
|
||||||
}
|
}
|
||||||
|
|
||||||
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f2), tr ("getting other VFO frequency"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_get_freq =" << f2;
|
qDebug () << "HamlibTransceiver::init_rig rig_get_freq other frequency";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f2), tr ("getting other VFO frequency"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::init_rig rig_get_freq other frequency =" << f2;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &mb, &wb), tr ("getting other VFFO mode"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_get_mode =" << mb << "bw =" << wb;
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode other VFO";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &mb, &wb), tr ("getting other VFO mode"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode other mode =" << mb << "bw =" << wb;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_other_frequency (f2);
|
update_other_frequency (f2);
|
||||||
|
|
||||||
if (!rig_->caps->set_vfo)
|
if (!rig_->caps->set_vfo)
|
||||||
{
|
{
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_vfo_op TOGGLE";
|
qDebug () << "HamlibTransceiver::init_rig rig_vfo_op TOGGLE";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_vfo_op (rig_.data (), RIG_VFO_CURR, RIG_OP_TOGGLE), tr ("exchanging VFOs"));
|
error_check (rig_vfo_op (rig_.data (), RIG_VFO_CURR, RIG_OP_TOGGLE), tr ("exchanging VFOs"));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_set_vfo";
|
qDebug () << "HamlibTransceiver::init_rig rig_set_vfo A/MAIN";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_set_vfo (rig_.data (), rig_->state.vfo_list & RIG_VFO_A ? RIG_VFO_A : RIG_VFO_MAIN), tr ("setting current VFO"));
|
error_check (rig_set_vfo (rig_.data (), rig_->state.vfo_list & RIG_VFO_A ? RIG_VFO_A : RIG_VFO_MAIN), tr ("setting current VFO"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -372,45 +374,52 @@ void HamlibTransceiver::init_rig ()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f1), tr ("getting frequency"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_get_freq =" << f1;
|
qDebug () << "HamlibTransceiver::init_rig rig_get_freq";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f1), tr ("getting frequency"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::init_rig rig_get_freq frequency =" << f1;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting mode"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_get_mode =" << m << "bw =" << w;
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting mode"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode mode =" << m << "bw =" << w;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_rx_frequency (f1);
|
update_rx_frequency (f1);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_set_split_vfo";
|
// qDebug () << "HamlibTransceiver::init_rig rig_set_split_vfo split off";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// error_check (rig_set_split_vfo (rig_.data (), RIG_VFO_CURR, RIG_SPLIT_OFF, RIG_VFO_CURR), tr ("setting split off"));
|
// error_check (rig_set_split_vfo (rig_.data (), RIG_VFO_CURR, RIG_SPLIT_OFF, RIG_VFO_CURR), tr ("setting split off"));
|
||||||
// update_split (false);
|
// update_split (false);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
vfo_t v;
|
vfo_t v;
|
||||||
error_check (rig_get_vfo (rig_.data (), &v), tr ("getting current VFO")); // has side effect of establishing current VFO inside hamlib
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug ().nospace () << "HamlibTransceiver::init_rig rig_get_vfo = 0x" << hex << v;
|
qDebug ().nospace () << "HamlibTransceiver::init_rig rig_get_vfo current VFO";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_vfo (rig_.data (), &v), tr ("getting current VFO")); // has side effect of establishing current VFO inside hamlib
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug ().nospace () << "HamlibTransceiver::init_rig rig_get_vfo current VFO = 0x" << hex << v;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
reversed_ = RIG_VFO_B == v;
|
reversed_ = RIG_VFO_B == v;
|
||||||
|
|
||||||
if (!(rig_->caps->targetable_vfo & (RIG_TARGETABLE_MODE | RIG_TARGETABLE_PURE)))
|
if (!(rig_->caps->targetable_vfo & (RIG_TARGETABLE_MODE | RIG_TARGETABLE_PURE)))
|
||||||
{
|
{
|
||||||
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting current mode"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::init_rig rig_get_mode =" << m << "bw =" << w;
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode current mode";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting current mode"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::init_rig rig_get_mode current mode =" << m << "bw =" << w;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -429,10 +438,12 @@ auto HamlibTransceiver::get_vfos () const -> std::tuple<vfo_t, vfo_t>
|
|||||||
if (rig_->caps->get_vfo)
|
if (rig_->caps->get_vfo)
|
||||||
{
|
{
|
||||||
vfo_t v;
|
vfo_t v;
|
||||||
error_check (rig_get_vfo (rig_.data (), &v), tr ("getting current VFO")); // has side effect of establishing current VFO inside hamlib
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug ().nospace () << "HamlibTransceiver::get_vfos rig_get_vfo = 0x" << hex << v;
|
qDebug ().nospace () << "HamlibTransceiver::get_vfos rig_get_vfo";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_vfo (rig_.data (), &v), tr ("getting current VFO")); // has side effect of establishing current VFO inside hamlib
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug ().nospace () << "HamlibTransceiver::get_vfos rig_get_vfo VFO = 0x" << hex << v;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
reversed_ = RIG_VFO_B == v;
|
reversed_ = RIG_VFO_B == v;
|
||||||
@ -444,9 +455,8 @@ auto HamlibTransceiver::get_vfos () const -> std::tuple<vfo_t, vfo_t>
|
|||||||
// support this way around
|
// support this way around
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::get_vfos rig_set_vfo";
|
qDebug () << "HamlibTransceiver::get_vfos rig_set_vfo VFO = A/MAIN";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_set_vfo (rig_.data (), rig_->state.vfo_list & RIG_VFO_A ? RIG_VFO_A : RIG_VFO_MAIN), tr ("setting current VFO"));
|
error_check (rig_set_vfo (rig_.data (), rig_->state.vfo_list & RIG_VFO_A ? RIG_VFO_A : RIG_VFO_MAIN), tr ("setting current VFO"));
|
||||||
}
|
}
|
||||||
// else only toggle available but both VFOs should be substitutable
|
// else only toggle available but both VFOs should be substitutable
|
||||||
@ -458,7 +468,6 @@ auto HamlibTransceiver::get_vfos () const -> std::tuple<vfo_t, vfo_t>
|
|||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::get_vfos reversing VFOs";
|
qDebug () << "HamlibTransceiver::get_vfos reversing VFOs";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
std::swap (rx_vfo, tx_vfo);
|
std::swap (rx_vfo, tx_vfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -510,17 +519,19 @@ void HamlibTransceiver::do_tx_frequency (Frequency tx, bool rationalise_mode)
|
|||||||
pbwidth_t current_width;
|
pbwidth_t current_width;
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::mode rig_get_split_mode";
|
qDebug () << "HamlibTransceiver::do_tx_frequency rig_get_split_mode";
|
||||||
#endif
|
#endif
|
||||||
auto new_mode = map_mode (state ().mode ());
|
|
||||||
error_check (rig_get_split_mode (rig_.data (), RIG_VFO_CURR, ¤t_mode, ¤t_width), tr ("getting mode of split TX VFO"));
|
error_check (rig_get_split_mode (rig_.data (), RIG_VFO_CURR, ¤t_mode, ¤t_width), tr ("getting mode of split TX VFO"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::do_tx_frequency rig_get_split_mode mode =" << current_mode << "bw =" << current_width;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
auto new_mode = map_mode (state ().mode ());
|
||||||
if (new_mode != current_mode)
|
if (new_mode != current_mode)
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::do_tx_frequency rig_set_split_mode";
|
qDebug () << "HamlibTransceiver::do_tx_frequency rig_set_split_mode mode =" << new_mode;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_set_split_mode (rig_.data (), RIG_VFO_CURR, new_mode, rig_passband_wide (rig_.data (), new_mode)), tr ("setting split TX VFO mode"));
|
error_check (rig_set_split_mode (rig_.data (), RIG_VFO_CURR, new_mode, rig_passband_wide (rig_.data (), new_mode)), tr ("setting split TX VFO mode"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -530,11 +541,11 @@ void HamlibTransceiver::do_tx_frequency (Frequency tx, bool rationalise_mode)
|
|||||||
// of split when you switch RX VFO (to set split mode above for
|
// of split when you switch RX VFO (to set split mode above for
|
||||||
// example)
|
// example)
|
||||||
|
|
||||||
|
auto split = tx ? RIG_SPLIT_ON : RIG_SPLIT_OFF;
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::do_tx_frequency rig_set_split_vfo";
|
qDebug () << "HamlibTransceiver::do_tx_frequency rig_set_split_vfo split =" << split;
|
||||||
#endif
|
#endif
|
||||||
|
auto rc = rig_set_split_vfo (rig_.data (), RIG_VFO_CURR, split, tx_vfo);
|
||||||
auto rc = rig_set_split_vfo (rig_.data (), RIG_VFO_CURR, tx ? RIG_SPLIT_ON : RIG_SPLIT_OFF, tx_vfo);
|
|
||||||
if (tx || (-RIG_ENAVAIL != rc && -RIG_ENIMPL != rc))
|
if (tx || (-RIG_ENAVAIL != rc && -RIG_ENIMPL != rc))
|
||||||
{
|
{
|
||||||
// On rigs that can't have split controlled only throw an
|
// On rigs that can't have split controlled only throw an
|
||||||
@ -567,15 +578,18 @@ void HamlibTransceiver::do_mode (MODE mode, bool rationalise)
|
|||||||
pbwidth_t current_width;
|
pbwidth_t current_width;
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::mode rig_get_mode";
|
qDebug () << "HamlibTransceiver::do_mode rig_get_mode";
|
||||||
#endif
|
#endif
|
||||||
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, ¤t_mode, ¤t_width), tr ("getting current VFO mode"));
|
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, ¤t_mode, ¤t_width), tr ("getting current VFO mode"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::do_mode rig_get_mode mode =" << current_mode << "bw =" << current_width;
|
||||||
|
#endif
|
||||||
|
|
||||||
auto new_mode = map_mode (mode);
|
auto new_mode = map_mode (mode);
|
||||||
if (new_mode != current_mode)
|
if (new_mode != current_mode)
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::mode rig_set_mode";
|
qDebug () << "HamlibTransceiver::do_mode rig_set_mode mode =" << new_mode;
|
||||||
#endif
|
#endif
|
||||||
error_check (rig_set_mode (rig_.data (), RIG_VFO_CURR, new_mode, rig_passband_wide (rig_.data (), new_mode)), tr ("setting current VFO mode"));
|
error_check (rig_set_mode (rig_.data (), RIG_VFO_CURR, new_mode, rig_passband_wide (rig_.data (), new_mode)), tr ("setting current VFO mode"));
|
||||||
}
|
}
|
||||||
@ -583,14 +597,17 @@ void HamlibTransceiver::do_mode (MODE mode, bool rationalise)
|
|||||||
if (state ().split () && rationalise)
|
if (state ().split () && rationalise)
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::mode rig_get_split_mode";
|
qDebug () << "HamlibTransceiver::do_mode rig_get_split_mode";
|
||||||
#endif
|
#endif
|
||||||
error_check (rig_get_split_mode (rig_.data (), RIG_VFO_CURR, ¤t_mode, ¤t_width), tr ("getting split TX VFO mode"));
|
error_check (rig_get_split_mode (rig_.data (), RIG_VFO_CURR, ¤t_mode, ¤t_width), tr ("getting split TX VFO mode"));
|
||||||
|
#if WSJT_TRACE_CAT
|
||||||
|
qDebug () << "HamlibTransceiver::do_mode rig_get_split_mode mode =" << current_mode << "bw =" << current_width;
|
||||||
|
#endif
|
||||||
|
|
||||||
if (new_mode != current_mode)
|
if (new_mode != current_mode)
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::mode rig_set_split_mode";
|
qDebug () << "HamlibTransceiver::do_mode rig_set_split_mode mode =" << new_mode;
|
||||||
#endif
|
#endif
|
||||||
hamlib_tx_vfo_fixup fixup (rig_.data (), tx_vfo);
|
hamlib_tx_vfo_fixup fixup (rig_.data (), tx_vfo);
|
||||||
error_check (rig_set_split_mode (rig_.data (), RIG_VFO_CURR, new_mode, rig_passband_wide (rig_.data (), new_mode)), tr ("setting split TX VFO mode"));
|
error_check (rig_set_split_mode (rig_.data (), RIG_VFO_CURR, new_mode, rig_passband_wide (rig_.data (), new_mode)), tr ("setting split TX VFO mode"));
|
||||||
@ -628,20 +645,24 @@ void HamlibTransceiver::poll ()
|
|||||||
|
|
||||||
if (rig_->caps->get_vfo)
|
if (rig_->caps->get_vfo)
|
||||||
{
|
{
|
||||||
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
|
qDebug ().nospace () << "HamlibTransceiver::poll rig_get_vfo";
|
||||||
|
#endif
|
||||||
vfo_t v;
|
vfo_t v;
|
||||||
error_check (rig_get_vfo (rig_.data (), &v), tr ("getting current VFO")); // has side effect of establishing current VFO inside hamlib
|
error_check (rig_get_vfo (rig_.data (), &v), tr ("getting current VFO")); // has side effect of establishing current VFO inside hamlib
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug ().nospace () << "HamlibTransceiver::state rig_get_vfo = 0x" << hex << v;
|
qDebug ().nospace () << "HamlibTransceiver::poll rig_get_vfo VFO = 0x" << hex << v;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
reversed_ = RIG_VFO_B == v;
|
reversed_ = RIG_VFO_B == v;
|
||||||
}
|
}
|
||||||
|
|
||||||
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f), tr ("getting current VFO frequency"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug () << "HamlibTransceiver::state rig_get_freq =" << f;
|
qDebug () << "HamlibTransceiver::poll rig_get_freq";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_freq (rig_.data (), RIG_VFO_CURR, &f), tr ("getting current VFO frequency"));
|
||||||
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
|
qDebug () << "HamlibTransceiver::poll rig_get_freq frequency =" << f;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_rx_frequency (f);
|
update_rx_frequency (f);
|
||||||
@ -649,34 +670,40 @@ void HamlibTransceiver::poll ()
|
|||||||
if (rig_->caps->targetable_vfo & (RIG_TARGETABLE_FREQ | RIG_TARGETABLE_PURE))
|
if (rig_->caps->targetable_vfo & (RIG_TARGETABLE_FREQ | RIG_TARGETABLE_PURE))
|
||||||
{
|
{
|
||||||
// we can only probe current VFO unless rig supports reading the other one directly
|
// we can only probe current VFO unless rig supports reading the other one directly
|
||||||
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
|
qDebug () << "HamlibTransceiver::poll rig_get_freq other VFO";
|
||||||
|
#endif
|
||||||
error_check (rig_get_freq (rig_.data ()
|
error_check (rig_get_freq (rig_.data ()
|
||||||
, reversed_
|
, reversed_
|
||||||
? (rig_->state.vfo_list & RIG_VFO_A ? RIG_VFO_A : RIG_VFO_MAIN)
|
? (rig_->state.vfo_list & RIG_VFO_A ? RIG_VFO_A : RIG_VFO_MAIN)
|
||||||
: (rig_->state.vfo_list & RIG_VFO_B ? RIG_VFO_B : RIG_VFO_SUB)
|
: (rig_->state.vfo_list & RIG_VFO_B ? RIG_VFO_B : RIG_VFO_SUB)
|
||||||
, &f), tr ("getting current VFO frequency"));
|
, &f), tr ("getting current VFO frequency"));
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug () << "HamlibTransceiver::state rig_get_freq other =" << f;
|
qDebug () << "HamlibTransceiver::poll rig_get_freq other VFO =" << f;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_other_frequency (f);
|
update_other_frequency (f);
|
||||||
}
|
}
|
||||||
|
|
||||||
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting current VFO mode"));
|
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug () << "HamlibTransceiver::state rig_get_mode =" << m << "bw =" << w;
|
qDebug () << "HamlibTransceiver::poll rig_get_mode";
|
||||||
|
#endif
|
||||||
|
error_check (rig_get_mode (rig_.data (), RIG_VFO_CURR, &m, &w), tr ("getting current VFO mode"));
|
||||||
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
|
qDebug () << "HamlibTransceiver::poll rig_get_mode mode =" << m << "bw =" << w;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_mode (map_mode (m));
|
update_mode (map_mode (m));
|
||||||
|
|
||||||
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
|
qDebug ().nospace () << "HamlibTransceiver::poll rig_get_split_vfo";
|
||||||
|
#endif
|
||||||
vfo_t v {RIG_VFO_NONE}; // so we can tell if it doesn't get updated :(
|
vfo_t v {RIG_VFO_NONE}; // so we can tell if it doesn't get updated :(
|
||||||
auto rc = rig_get_split_vfo (rig_.data (), RIG_VFO_CURR, &s, &v);
|
auto rc = rig_get_split_vfo (rig_.data (), RIG_VFO_CURR, &s, &v);
|
||||||
if (-RIG_OK == rc && RIG_SPLIT_ON == s)
|
if (-RIG_OK == rc && RIG_SPLIT_ON == s)
|
||||||
{
|
{
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug ().nospace () << "HamlibTransceiver::state rig_get_split_vfo split = " << s << " VFO = 0x" << hex << v;
|
qDebug ().nospace () << "HamlibTransceiver::poll rig_get_split_vfo split = " << s << " VFO = 0x" << hex << v;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_split (true);
|
update_split (true);
|
||||||
@ -688,7 +715,7 @@ void HamlibTransceiver::poll ()
|
|||||||
else if (-RIG_OK == rc) // not split
|
else if (-RIG_OK == rc) // not split
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug ().nospace () << "HamlibTransceiver::state rig_get_split_vfo split = " << s << " VFO = 0x" << hex << v;
|
qDebug ().nospace () << "HamlibTransceiver::poll rig_get_split_vfo split = " << s << " VFO = 0x" << hex << v;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_split (false);
|
update_split (false);
|
||||||
@ -696,7 +723,7 @@ void HamlibTransceiver::poll ()
|
|||||||
else if (-RIG_ENAVAIL == rc || -RIG_ENIMPL == rc) // Some rigs (Icom) don't have a way of reporting SPLIT mode
|
else if (-RIG_ENAVAIL == rc || -RIG_ENIMPL == rc) // Some rigs (Icom) don't have a way of reporting SPLIT mode
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug ().nospace () << "HamlibTransceiver::state rig_get_split_vfo can't do on this rig";
|
qDebug ().nospace () << "HamlibTransceiver::poll rig_get_split_vfo can't do on this rig";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// just report how we see it based on prior commands
|
// just report how we see it based on prior commands
|
||||||
@ -708,6 +735,9 @@ void HamlibTransceiver::poll ()
|
|||||||
|
|
||||||
if (RIG_PTT_NONE != rig_->state.pttport.type.ptt && rig_->caps->get_ptt)
|
if (RIG_PTT_NONE != rig_->state.pttport.type.ptt && rig_->caps->get_ptt)
|
||||||
{
|
{
|
||||||
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
|
qDebug () << "HamlibTransceiver::poll rig_get_ptt";
|
||||||
|
#endif
|
||||||
ptt_t p;
|
ptt_t p;
|
||||||
auto rc = rig_get_ptt (rig_.data (), RIG_VFO_CURR, &p);
|
auto rc = rig_get_ptt (rig_.data (), RIG_VFO_CURR, &p);
|
||||||
if (-RIG_ENAVAIL != rc && -RIG_ENIMPL != rc) // may fail if
|
if (-RIG_ENAVAIL != rc && -RIG_ENIMPL != rc) // may fail if
|
||||||
@ -715,9 +745,8 @@ void HamlibTransceiver::poll ()
|
|||||||
// support command
|
// support command
|
||||||
{
|
{
|
||||||
error_check (rc, tr ("getting PTT state"));
|
error_check (rc, tr ("getting PTT state"));
|
||||||
|
|
||||||
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
#if WSJT_TRACE_CAT && WSJT_TRACE_CAT_POLLS
|
||||||
qDebug () << "HamlibTransceiver::state rig_get_ptt =" << p;
|
qDebug () << "HamlibTransceiver::poll rig_get_ptt PTT =" << p;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
update_PTT (!(RIG_PTT_OFF == p));
|
update_PTT (!(RIG_PTT_OFF == p));
|
||||||
@ -747,9 +776,8 @@ void HamlibTransceiver::do_ptt (bool on)
|
|||||||
if (RIG_PTT_NONE != rig_->state.pttport.type.ptt)
|
if (RIG_PTT_NONE != rig_->state.pttport.type.ptt)
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::ptt rig_set_ptt";
|
qDebug () << "HamlibTransceiver::do_ptt rig_set_ptt PTT = true";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_set_ptt (rig_.data (), RIG_VFO_CURR, back_ptt_port_ ? RIG_PTT_ON_DATA : RIG_PTT_ON), tr ("setting PTT on"));
|
error_check (rig_set_ptt (rig_.data (), RIG_VFO_CURR, back_ptt_port_ ? RIG_PTT_ON_DATA : RIG_PTT_ON), tr ("setting PTT on"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -758,9 +786,8 @@ void HamlibTransceiver::do_ptt (bool on)
|
|||||||
if (RIG_PTT_NONE != rig_->state.pttport.type.ptt)
|
if (RIG_PTT_NONE != rig_->state.pttport.type.ptt)
|
||||||
{
|
{
|
||||||
#if WSJT_TRACE_CAT
|
#if WSJT_TRACE_CAT
|
||||||
qDebug () << "HamlibTransceiver::ptt rig_set_ptt";
|
qDebug () << "HamlibTransceiver::do_ptt rig_set_ptt PTT = false";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
error_check (rig_set_ptt (rig_.data (), RIG_VFO_CURR, RIG_PTT_OFF), tr ("setting PTT off"));
|
error_check (rig_set_ptt (rig_.data (), RIG_VFO_CURR, RIG_PTT_OFF), tr ("setting PTT off"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user