I am trying to communicate with an MKS 651C Pressure Controller, using an RS232 cable and VISA, but am unable to get a response. The code I have tells me there are no bytes, when I expect two to five with command "R1", to be read at the serial port. I have tried replacing "Bytes at port" with a constant and get the same response.
NI I/O Trace shows the the warning 0x3FFF006.
Does anyone have any suggestions for resolving this issue?
Note: I have read through the other few posts on here about this controller and have not found a working solution.
The VI you attached doesn't have anything saved in the controls to tell us what command you are sending. So no help there.
Your screenshot doesn't match your VI. Your screenshot shows a message concatenated to a carriage return. Your VI shows a message concatenated to whatever is saved in the global variable called termination character. So perhaps it is empty or has something else besides a termination character.
0x3FFF0006 (you missed a zero), is a warning saying you got exactly the same number of bytes you asked for. It really doesn't mean anything. (I think it is stupid that NI even creates a "warning" for that.) So don't worry about that.
Bytes at Port is the wrong thing to use 99% of the time. Since your message you wrote ends with a termination character, does your response come back with a termination character? If so, that should be enabled at the VISA Serial Configure, and just request a sufficiently large number of bytes. Then you can get rid of the wait and bytes at port.
Verify that the message you are sending is correct. My bet is that you missed sending a termination character.