mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-27 06:38:44 -05:00
Some HRD commands need a settling time otherwise they don't stick
This seems to be limited to the Yaesu FTdx3000 "RX A" and "RX B" commands so a short delay has been added after these sort of commands. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5299 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
559873ea2b
commit
03192a2fcc
@ -33,7 +33,7 @@ public:
|
|||||||
protected:
|
protected:
|
||||||
void do_start () override;
|
void do_start () override;
|
||||||
void do_stop () override;
|
void do_stop () override;
|
||||||
void do_frequency (Frequency, MODE = UNK) override;
|
void do_frequency (Frequency, MODE) override;
|
||||||
void do_tx_frequency (Frequency, bool rationalise_mode) override;
|
void do_tx_frequency (Frequency, bool rationalise_mode) override;
|
||||||
void do_mode (MODE, bool rationalise) override;
|
void do_mode (MODE, bool rationalise) override;
|
||||||
void do_ptt (bool on) override;
|
void do_ptt (bool on) override;
|
||||||
|
@ -13,6 +13,10 @@
|
|||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
char const * const HRD_transceiver_name = "Ham Radio Deluxe";
|
char const * const HRD_transceiver_name = "Ham Radio Deluxe";
|
||||||
|
|
||||||
|
// some commands require a settling time, particularly "RX A" and
|
||||||
|
// "RX B" on the Yaesu FTdx3000.
|
||||||
|
int constexpr yaesu_delay {250};
|
||||||
}
|
}
|
||||||
|
|
||||||
void HRDTransceiver::register_transceivers (TransceiverFactory::Transceivers * registry, int id)
|
void HRDTransceiver::register_transceivers (TransceiverFactory::Transceivers * registry, int id)
|
||||||
@ -445,6 +449,10 @@ void HRDTransceiver::set_button (int button_index, bool checked)
|
|||||||
if (button_index >= 0)
|
if (button_index >= 0)
|
||||||
{
|
{
|
||||||
send_simple_command ("set button-select " + buttons_.value (button_index) + (checked ? " 1" : " 0"));
|
send_simple_command ("set button-select " + buttons_.value (button_index) + (checked ? " 1" : " 0"));
|
||||||
|
if (button_index == rx_A_button_ || button_index == rx_B_button_)
|
||||||
|
{
|
||||||
|
QThread::msleep (yaesu_delay);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -840,7 +848,7 @@ QString HRDTransceiver::send_command (QString const& cmd, bool no_debug, bool pr
|
|||||||
// required on some radios because commands don't get executed
|
// required on some radios because commands don't get executed
|
||||||
// correctly otherwise (ICOM for example)
|
// correctly otherwise (ICOM for example)
|
||||||
QThread::msleep (50);
|
QThread::msleep (50);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!recurse && prepend_context)
|
if (!recurse && prepend_context)
|
||||||
{
|
{
|
||||||
|
@ -41,9 +41,9 @@ protected:
|
|||||||
// Implement the TransceiverBase interface.
|
// Implement the TransceiverBase interface.
|
||||||
void do_start () override;
|
void do_start () override;
|
||||||
void do_stop () override;
|
void do_stop () override;
|
||||||
void do_frequency (Frequency, MODE = UNK) override;
|
void do_frequency (Frequency, MODE) override;
|
||||||
void do_tx_frequency (Frequency, bool rationalise_mode = true) override;
|
void do_tx_frequency (Frequency, bool rationalise_mode) override;
|
||||||
void do_mode (MODE, bool rationalise = true) override;
|
void do_mode (MODE, bool rationalise) override;
|
||||||
void do_ptt (bool on) override;
|
void do_ptt (bool on) override;
|
||||||
|
|
||||||
// Implement the PollingTransceiver interface.
|
// Implement the PollingTransceiver interface.
|
||||||
|
@ -33,9 +33,9 @@ class HamlibTransceiver final
|
|||||||
private:
|
private:
|
||||||
void do_start () override;
|
void do_start () override;
|
||||||
void do_stop () override;
|
void do_stop () override;
|
||||||
void do_frequency (Frequency, MODE = UNK) override;
|
void do_frequency (Frequency, MODE) override;
|
||||||
void do_tx_frequency (Frequency, bool rationalise_mode = true) override;
|
void do_tx_frequency (Frequency, bool rationalise_mode) override;
|
||||||
void do_mode (MODE, bool rationalise = true) override;
|
void do_mode (MODE, bool rationalise) override;
|
||||||
void do_ptt (bool) override;
|
void do_ptt (bool) override;
|
||||||
|
|
||||||
void poll () override;
|
void poll () override;
|
||||||
|
@ -35,7 +35,7 @@ public:
|
|||||||
|
|
||||||
void do_start () override;
|
void do_start () override;
|
||||||
void do_stop () override;
|
void do_stop () override;
|
||||||
void do_frequency (Frequency, MODE = UNK) override;
|
void do_frequency (Frequency, MODE) override;
|
||||||
void do_tx_frequency (Frequency, bool rationalise_mode) override;
|
void do_tx_frequency (Frequency, bool rationalise_mode) override;
|
||||||
void do_mode (MODE, bool rationalise) override;
|
void do_mode (MODE, bool rationalise) override;
|
||||||
void do_ptt (bool on) override;
|
void do_ptt (bool on) override;
|
||||||
|
@ -98,8 +98,8 @@ protected:
|
|||||||
virtual void do_frequency (Frequency rx, MODE = UNK) = 0;
|
virtual void do_frequency (Frequency rx, MODE = UNK) = 0;
|
||||||
virtual void do_post_frequency (Frequency, MODE = UNK) {}
|
virtual void do_post_frequency (Frequency, MODE = UNK) {}
|
||||||
|
|
||||||
virtual void do_tx_frequency (Frequency tx = 0, bool rationalise_mode = true) = 0;
|
virtual void do_tx_frequency (Frequency tx = 0u, bool rationalise_mode = false) = 0;
|
||||||
virtual void do_post_tx_frequency (Frequency, bool /* rationalise_mode */ = true) {}
|
virtual void do_post_tx_frequency (Frequency = 0u, bool /* rationalise_mode */ = false) {}
|
||||||
|
|
||||||
virtual void do_mode (MODE, bool rationalise = true) = 0;
|
virtual void do_mode (MODE, bool rationalise = true) = 0;
|
||||||
virtual void do_post_mode (MODE, bool /* rationalise */ = true) {}
|
virtual void do_post_mode (MODE, bool /* rationalise */ = true) {}
|
||||||
|
Loading…
Reference in New Issue
Block a user