Topic: 1.6.3 and serial control

One of the bug fixes, as noted in the release notes, for 1.6.3 involved how the serial port responded to a command.  Here is the note;

741 - Serial port was not using raw output mode

The NION serial port was not using raw mode when sending data out of the port. This meant that CR/LF (carriage return / line feed) characters were added to lines that previously did not include them.

Because of a recent email to tech support, this may not be enough of an explanation, so let me go into a little more detail.

When a ControlSet (CS) or a ControlGet (CG) is done, the NION responds with a StatusIs.  The exact string of the status response is not important for this discussion, but the termination is important.

Previously, the response end would be CR CR LF (actually, the hexadecimal value of 0D 0D 0A).  So the bug is displayed in this case by receiving an extra carriage return.

From now on, starting with 1.6.3, this extra CR will not be sent.  So the termination will now be CR LF

So what does this mean?  Here is the bottom line;

1) If the external control is using a serial port for control.
2) The code was written to parse the response string all the way to the end of the string (which means it is looking at and parsing the extra CR).

Then upgrading to 1.6.3 and future firmware from earlier versions might cause control problems.  Be sure you test things before you complete an upgrade, and plan accordingly.

Personally, I don't recommend doing an upgrade just because you can.  Normally, I do an upgrade because a new feature is needed that is available only with a new version of software.

Hope this better explains what this bug was, and how it can impact the upgrade process.


Make it intuitive, never leave them guessing.


Re: 1.6.3 and serial control

Thanks, Scott.
Good explanation of otherwise cryptic release note.

"The single biggest problem in communication is the illusion that it has taken place."
                                                                                        - George Bernard Shaw