Uploaded image for project: 'MINA'
  1. MINA
  2. DIRMINA-720

Hardware Flow Control Disables Serial Port on Windows Platform

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.0-M4, 2.0.0-M5, 2.0.0-M6, 2.0.0-RC1
    • 2.0.0
    • Transport
    • None
    • Windows, serial connections only
      Specifically does NOT happen on Linux systems (others untested)

    Description

      Attempting protocol discovery on single port – Most protocols use no flow control, one using RTS/CTS. Each protocol attempts connection, fails (because far end device turned off), then tries next protocol.

      Test involves letting discovery fail through multiple cycles (ie test all available protocols) then eventually turn on device and see it get discovered when it's protocol cycles back around.

      HOWEVER... test failed before first cycle completed, because first protocol using CTS/RTS flow control (via FlowControl.RTSCTS_OUT parameter to SerialAddress constructor) is the last one to successfully open the serial port.

      While the protocol with RTS/CTS works (in that it properly fails), the next, and all following, protocols fail immediately as the port throws a PortInUseException on open attempt.

      Changing FlowControl.RTSCTS_OUT to FlowControl.NONE makes this test run fine. It also, however, breaks that particular protocol because the far end device expects flow control that it does not see.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            vrm Julien Vermillard
            bgage boB Gage
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment