QtSerialPort 5.2 introduces a few new features and improvements as well as bugfixes over the 5.1.x series. For more details, refer to the online documentation included in this distribution. The documentation is also available online: http://qt-project.org/doc/ The QtSerialPort version 5.2 series is binary compatible with the 5.1.x series. Applications compiled for 5.1 will continue to run with 5.2. Some of the changes listed in this file include issue tracking numbers corresponding to tasks in the Qt Bug Tracker: http://bugreports.qt-project.org/ Each of these identifiers can be entered in the bug tracker to obtain more information about a particular change. **************************************************************************** * Library * **************************************************************************** - [QTBUG-31966] Support has been added for non-standard Qt header installation folder (e.g. on Red Hat). - [QTBUG-33125] The generation of the forwarding headers now works with Qt 4 and Necessitas. - [QTBUG-33117] [QTBUG-33139] Fixed the compilation for Android with Qt 5. The command line enumerator seems to work. - Added support for non-standard BSD4 baud rates. - [QTBUG-32173] Rewrote the documentation to more proper English than before, and also improved the accuracy of the content. - [QTBUG-33774] Document that the serial port parameters cannot be set before opening. - No more unnecessary syscalls (parameter settings, pinout signal query, etc) in the backend when the port is closed. This also means no unnecessary errors are set. - Removed the QtGui linkage for the command line enumerator example, so it now links against QtCore and QtSerialPort only. - More warnings when doing operations that require the serial port to be open, but it is closed. - The deprecated QtAlgorithm usage is removed. - Some outputs in the examples are fixed to be more proper English; this includes mostly typos, but also some comprehensive changes. - New command line sync reader example available with screen shot and documentation. - New command line async reader example available with screen shot and documentation. - New command line sync writer example available with screen shot and documentation. - New command line async writer example available with screen shot and documentation. - The buildsystem now respects the configure run for Qt 5, i.e. pkg-config is not used for finding udev again. - [QTBUG-34429] Mark the data error policy obsolete. End users should stop using this feature now. It may be removed later in Qt 6.X, and there is a warning now if it is used. - [QTBUG-34474] Replace the internal QTtyLocker with QLockFile from QtCore and a small convenience on top of it to comply with the locking directories lockdev also uses. - The lock file usage has been extended to support Android as there is no direct access to the usual Unix lock file system paths. The lock file is now placed into /data/local/tmp. - [QTBUG-35184] Mark the isValid() method in QSerialPortInfo deprecated because it has no common use case. - [QTBUG-35215] Mark the QSerialPort::Unknown* enumeration values in QSerialPort deprecated because they have no use case. - QSerialPortInfo: * [QTBUG-32684] VID/PID for USB Huawei 3G Modem is returned properly now. * [QTBUG-32018] The port name and product identifiers now work for more devices and scenarios on Windows. * Linux: sysfs support was added for serial port information as a fallback for udev. * [QTBUG-34329] Support added for loading udev at runtime rather than linking at compilation time. * [QTBUG-32563] Motorola IMX support was added when udev and sysfs are not present. * Support has been added for the hard-coded device enumeration backend to get information. Android uarts such as /dev/ttyHS* (High speed UART) and /dev/ttyHSL* (Low speed UART) are supported by that backend. * Support has been added for the hard-coded device enumeration backend to get information. /dev/ttyO* (native OMAP UART) is supported by that backend. * [QTBUG-35064] PCI support has been added to the sysfs backend on Linux to support the enumeration of such devices. - QSerialPort: * [QTBUG-32016] No "No such file or directory" error set after waitForReadyRead anymore. * [QTBUG-32017] Windows: Fixed the waitAnyEvent() method for the WAIT_FAILED handling. * [QTBUG-31964] The serial port enums are now properly tagged as Q_FLAGS. * Added native serial port handle; it is now possible to do any custom operation if not supported by QtSerialPort. * [QTBUG-32680] Added API for handling the timeout errors when waiting for read or write. * Added a new error enumeration value called "NotOpenError". This can be used for operations where the serial port is not open. This is also used internally now.