Hi Mike,

I was think about the TCP/IP connection to the rig, the rig_close() needs to shutdown and close that rather than be still waiting. In that case the close should be processed promptly. I don't have a FlexRadio or any other network connected rig.

Another question, what happens when rigctld is not included? I ask because direct control must appear to behave exactly the same as indirect control via rigctld, if that is not he case then there is a more serious issue there.

73
Bill
G4WJS.

On 24/04/2020 04:21, Black Michael via wsjt-devel wrote:
Via the rigctld interface would be the "q" command getting sent by WSJT-X via rig_close()...but the rigctld thread would be locked by the mutex while it's still waiting for response from the rig.

But the "q" is fire-and-forget so WSJT-X could still close the port which may solve the problem with the invalid configuration.

static int netrigctl_close(RIG *rig)
{
    rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__);

    /* clean signoff, no read back */
    write_block(&rig->state.rigport, "q\n", 2);

    return RIG_OK;
}

Did you try and duplicate this by turning off your rig?

Mike




On Thursday, April 23, 2020, 06:49:50 PM CDT, Bill Somerville <g4...@classdesign.com> wrote:


Hi Mike,

are we dealing with a long wait for the TCP/IP connection to close down? IIRC if the client end initiates the shutdown of a TCP/IP connection there should be minimum delay. rig_close() will have been called before rig_open() is called again on the same RIG handle.

73
Bill
G4WJS.

On 23/04/2020 22:20, Black Michael via wsjt-devel wrote:
Actually I just repeated it.  Has to do with the timeout.....using rigctld....or any network-based rig. So if the rig takes too long to respond...then you get the timeout...the rig wakes up again...you click the Retry and get invalid configuration because the rig is till open.

You may be able to duplicate this by turning off your rig, wait for the timeout, and turn it back on, then click Retry.

de Mike W9MDB





On Thursday, April 23, 2020, 04:10:51 PM CDT, Black Michael via wsjt-devel <wsjt-devel@lists.sourceforge.net> <mailto:wsjt-devel@lists.sourceforge.net> wrote:


Don't have any more details than the error message of invalid configuration.

I've seen it on my system too once in a while but never repeatable of course.

I think it may have to do with WSJT-X opening a 2nd connection without closing the 1st connection as I saw some of that in recent debug logs.

I do notice that do_start does not ensure that the rig is closed

int HamlibTransceiver::do_start ()
{
  TRACE_CAT ("HamlibTransceiver",
 QString::fromLatin1 (rig_->caps->mfg_name).trimmed ()
             << QString::fromLatin1 (rig_->caps->model_name).trimmed ());

  error_check (rig_open (rig_.data ()), tr ("opening connection to rig"));


Mike







On Thursday, April 23, 2020, 02:40:48 PM CDT, Bill Somerville <g4...@classdesign.com> <mailto:g4...@classdesign.com> wrote:


On 23/04/2020 20:15, Black Michael via wsjt-devel wrote:
> And sometimes doing retry will give a configuration error too which
> requires a restart of WSJT-X...also undesirable.
>
> Mike

Hi Mike,

that's the first report of that, can you supply more details please?


73
Bill
G4WJS.



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

Reply via email to