I've been facing this issue in Qt5.6.0 and Qt5.9.1. When you try to write more than 1 byte then the second character is never written. Not only the second because if you write a long buffer you will miss several characters at different positions. But at least the second will be missing.
I've attached a simple program to show the problem. In the main.cpp comment either
and run the program.
When using "write" you will see that you receive the string "tst" but when you use "write1per1" you will receive the correct string "test". You will need to connect to a comport just echoing the characters it receives. If you can't setup this test I can provide a short video showing the problem.
Here is the test program https://www.dropbox.com/s/ar4p18ymwe3ikc4/testserial.zip?dl=0
(JIRA fails to attach this file ...)