Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-67224

QSerialPort occassionaly fails to read high speed data from VCP and will hang

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P3: Somewhat important
    • Resolution: Done
    • Affects Version/s: 5.10.1
    • Fix Version/s: 5.11.0
    • Component/s: Serial Port
    • Labels:
      None
    • Environment:
      Windows 10 Home Version 1709
      Qt 5.10.1 (MinGW_530_32)
      Microsoft Serial Driver version 10.0.16299.15 (also present with ST VCP Driver)

      Description

      I am using a device transmitting at 600Hz to a Windows 10 computer. The problem is QSerialPort has random timeout's where waitForReadyRead(1000) returns false or waitForReadyRead(-1) will hang forever.

      This problem can be reproduced on the Qt Terminal Example ([QT_INSTALL_EXAMPLES]/serialport/terminal) which uses the ReadyRead() signal, the signal will simply never be fired in some cases when the port is opened and application waits forever. I am unable to reproduce the problem with other Window's Terminal programs eg. HTerm, RealTerm. 

      I am using the Windows built in driver as recommended by ST on their website

      Using Serial Port Monitor on the Qt terminal example when the program hangs I have this output: pastebin

      Output from a test program (program included in link) gives this behaviour: pastebin

        Attachments

        1. HTerm.html
          356 kB
        2. QSerialPort Hanging.html
          26 kB
        3. SerialReader.zip
          3 kB
        For Gerrit Dashboard: QTBUG-67224
        # Subject Branch Project Status CR V

          Activity

            People

            • Assignee:
              kuzulis Denis Shienkov
              Reporter:
              bongani Bongani Ncube
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes