This content is not available in your preferred language.

The content is shown in another available language. Your browser may include features that can help translate the text.

Serial Device Works in HyperTerminal But Not in LabVIEW or VISA Test Panels

Updated Mar 27, 2023

Reported In

Software

  • LabVIEW

Driver

  • NI-VISA

Issue Details

Why does my serial instrument work in HyperTerminal, but not in LabVIEW or VISA Test Panels in Measurement & Automation Explorer (MAX)?

Solution

  1. Verify that the termination characters used in HyperTerminal match those in LabVIEW.
    • Typically, HyperTerminal appends a \r\n, which corresponds to a carriage return followed by a line feed, at the end of each message it sends.
    • You can use the \Codes Display of string controls and indicators in LabVIEW to verify that the termination characters are consistent. For example, you can write out a string in HyperTerminal and read it back into LabVIEW using a loopback test (How to Do a Serial Loopback Test ). This will allow you to determine which termination characters HyperTerminal uses. Then, write out the same string in LabVIEW and read it into LabVIEW using a loopback test. Compare these input values to determine whether the termination characters match each other.
  2. Slow down the rate at which you send command strings to the instrument. (If the serial instrument is an older instrument and/or doesn't have hardware control on it, then how fast LabVIEW and/or a VISA Test Panel in NI-MAX writes out serial data can be an issue.)
    • HyperTerminal will write out the characters to the serial port as they are typed into HyperTerminal. Therefore, when the word string is typed, HyperTerminal sends 6 individual characters: first s, then t, then r, and so on through the end of the string at which point it sends the termination characters.
    • LabVIEW, on the other hand, will take the entire string, and write it to the instrument all at once with no delay between characters. You can test this by using a for loop to write the string out to the instrument and have it write one character at a time, with a small delay between each character (i.e. each iteration) in the loop. To find a drop in replacement for the VISA as well as a example application using the VI (Serial One Byte at a Time )

Additional Information

This issue arises almost always as a result of different configuration settings between HyperTerminal and LabVIEW/NI-MAX. If the troubleshooting steps above do not resolve the problem, verify that all communication settings are configured similarly between HyperTerminal and LabVIEW/NI-MAX.