Thank you for your reply.
I'd love to try it, but I'm on macOS.

wt., 24 sty 2023 o 15:39 Black Michael <mdblac...@yahoo.com> napisaƂ(a):
>
> Even simpler....I made a patch which just sets the mode after a frequency 
> change all the time.  It was doing a get_mode all the time so we may as well 
> just set it...should take the same amount of time.
> Try this version....
>
> https://www.dropbox.com/s/sxikxk9fvzaanwz/wsjtx-2.6.1-win64.exe?dl=0
>
> Has the patch below.
>
> Mike W9MDB
>
>
> diff --git a/Transceiver/DXLabSuiteCommanderTransceiver.cpp 
> b/Transceiver/DXLabSuiteCommanderTransceiver.cpp
> index 02f8ad636..b0ee59ac3 100644
> --- a/Transceiver/DXLabSuiteCommanderTransceiver.cpp
> +++ b/Transceiver/DXLabSuiteCommanderTransceiver.cpp
> @@ -206,18 +206,15 @@ void DXLabSuiteCommanderTransceiver::do_frequency 
> (Frequency f, MODE m, bool /*n
>  {
>    CAT_TRACE (f << ' ' << state ());
>    auto f_string = frequency_to_string (f);
> -  if (UNK != m && m != get_mode ())
> +  auto params =  ("<xcvrfreq:%1>" + f_string).arg (f_string.size ());
> +  simple_command (("<command:10>CmdSetFreq<parameters:%1>" + params).arg 
> (params.size ()));
> +  if (UNK != m)
>      {
>        auto m_string = map_mode (m);
>        auto params =  ("<xcvrfreq:%1>" + f_string + "<xcvrmode:%2>" + 
> m_string + "<preservesplitanddual:1>Y").arg (f_string.size ()).arg 
> (m_string.size ());
>        simple_command (("<command:14>CmdSetFreqMode<parameters:%1>" + 
> params).arg (params.size ()));
>        update_mode (m);
>      }
> -  else
> -    {
> -      auto params =  ("<xcvrfreq:%1>" + f_string).arg (f_string.size ());
> -      simple_command (("<command:10>CmdSetFreq<parameters:%1>" + params).arg 
> (params.size ()));
> -    }
>    update_rx_frequency (f);
>  }
>
>
>
>
>
>
>
> On Tuesday, January 24, 2023 at 04:21:27 AM CST, SO9W via wsjt-devel 
> <wsjt-devel@lists.sourceforge.net> wrote:
>
>
>
>
>
> Hi.
>
> I think there is an issue with DXLab Suite Commander integration
> (radio settings). Under specific circumstances, on Yeasu FT-991,
> FTdx10 and similar, it doesn't change a TRX mode to USB when "Mode:
> SSB" is checked in radio settings.
>
> Problem exists in  "DXLabSuiteCommanderTransceiver::do_frequency" function"
>
> Decision about mode change is based on current mode, not a mode after
> frequency is changed.
>
> Probably that function, in first instance probably should perform
> CmdSetFreq, then check mode on new frequency via CmdSendMode, and
> finally if it's not USB, CmdSetMode should be performed.
>
> Explanation.
>
> Those who are using Yeasu FT-991, FTdx10 and similar touch screen
> models, know that Yeasu stores some settings like AMP,  ATT,
> modulation per band. When the band is changed via choosing a touch
> screen button, band settings are restored. Of course you can turn your
> VFO from 28MHz to 7MHz, but in that case mode and other settings are
> from the 10m band and do not fit to 40m. That's why Yeasu operators
> are using band change buttons.
>
> When we translate it to Yeasu CAT commands, a simple frequency change
> is a FA xxxxxx command. But it should be preceded by BS xx (band
> switch) command to restore proper band settings.
>
> Original DXLab probably does not perform BS xx, so every time the band
> is switched from e.g. 10m, to 40m, the operator must dig into touch
> menu and update AMP, ATT and mode. This is also happening when
> switching bands from WSJT-X. In general it's a DXLab UX "bug". On the
> other hand current WSJT-X "force USB mode" works, because of this
> "bug".
>
> But there are other apps, like RUMlogNG, emulating DXLab to get WSJT-X
> integration.
>
> I've asked the RUMlogNG author to change integration with Yeasu CAT,
> and run BS xx before FA xxxxxxx to restore band settings. It works
> perfectly with one exception - WSJT-X modulation update.
>
> Example.
>
> Let's assume the initial state, when TRX was used for voice
> operations. 80m, 40m bands are on LSB, 20m is on USB and 20m is active
> band.
>
> WSJT-X is launched. It's polling RUMlogNG about mode and frequency
> with commands CmdSendMode, CmdGetFreq. Current mode is USB.
>
> I'm choosing in WSJT-X 40m. It performs command:
> "<command:10>CmdSetFreq<parameters:23><xcvrfreq:10>7074,000"
>
> Now I'm on 40m, but because Yeasu "BS xx && FA xxxxxxx" was executed,
> mode is also restored, and it's LSB.
>
> After that, mode and frequency are still pulled. WSJT-X gets LSB, but
> is doing nothing with it.
>
> Next I'm switching to 80m. WSJT-X sends
> "<command:14>CmdSetFreqMode<parameters:63><xcvrfreq:10>
> 3573,000<xcvrmode:3>USB<preservesplitanddual:1>Y" because current mode
> is LSB. This time, once 80m is activated mode changes to USB.
>
> Summary.
>
> I think if this could be changed inline with my proposal it will be
> compatible with both approaches (original, without BS xx and proper
> with BS xx). What do you think?
>
> --
> Arek
> SO9W
>
>
> _______________________________________________
> wsjt-devel mailing list
> wsjt-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wsjt-devel



-- 
Arek
SO9W


_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to