Looking at LabVIEW's serial communication example (NI Example Finder»Hardware Input and Output»Serial»Simple Serial.vi), you will notice that it starts with a VISA Configure Serial Port
node. This sets up both the termination character (which defaults to hex 0A ("linefeed")) and the timeout (defaults to 10 seconds).
If you are reading serial data and a byte that matches the set-up termination character, then the VISA Read VI will assume that this must be the end of the requested data and will stop the reading operation. This happens because the second condition above has been satisfied, even though condition 1 has not been satisfied and the VI has not read all of the bytes from the port.
Using the default termination character usually will not cause issues in normal text communications. However, binary data does not have a special meaning assigned to the 0x0A byte. In the example above this is the reason for the first read operation stop after 63 bytes and leaving the remaining 37 bytes in the software buffer waiting to be read. If you are doing binary data transfers over serial, you will almost always want to disable the termination character on the VISA Configure Serial Port VI. To do so, change the input Enable Termination Char
from the VISA Configure Serial Port