Anda di halaman 1dari 9

Maximize the Notepad window to read this file more easily.

-------------------------------------------
Release Notes: SNAP-LCE Controller Firmware
-------------------------------------------

These release notes apply to the following Opto 22 product(s):

SNAP-LCE controller

======================================================================

SNAP-LCE Controller Firmware R6.1c


September 29, 2005

------------------------------------------------------------------------------

SNAP-LCE Controller Firmware R6.1c adds support for the following SNAP I/O
modules:

SNAP-AIARMS-i
SNAP-AIVRMS-i
SNAP-AILC
SNAP-AOA-23-iSRC

This update also incorporates the following changes:

* Fixed problem where the brain used an incorrect scaling factor, which would
cause an incorrect reading from an RTD.

* Fixed problem where multiple incoming Modbus packets were not being handled
correctly, causing the first packet to sometimes not be received.

* Fixed some problems with 64-bit integers where part of a passed-in value
was not handled correctly.

* Fixed a problem with ioControl timers where they could be set to a very
large value, (in the millions of mSec) if the system clock timer rolled over
while the timer was active. The system clock tick counter was increased from
32 bits to 64 bits. Now any potential rollover problems would happen after
the controller has run for roughly half a billion (584,542,046) years.
Previously the timer problem could happen every 49.71 days.

* Fixed an Ethernet I/O re-enable problem. If an ethernet I/O unit was powered
down then powered back up while a strategy was running, I/O re-enable
commands would not send point config information to the brain. Unless the
brain had its configuration stored in flash, access to any point would
set / get only the IVAL.

===============================================================================

SNAP-LCE Controller Firmware B6.1b


June 15, 2005

------------------------------------------------------------------------------

SNAP-LCE Controller Firmware B6.1b was made available briefly as a beta


version to a small number of testers, but this version was never formally
released.

===============================================================================

SNAP-LCE Controller Firmware R6.1a


March 16, 2005

Enhancements
------------

* Support for high-density digital input and output modules. Opto 22 high-
density digital modules include the SNAP-IDC-32, SNAP-ODC-32-SRC, and SNAP-
ODC-32-SNK. Each of these modules provides 32 digital input or digital output
points in one SNAP module, for up to 512 digital points in one SNAP rack. For
more information on SNAP high-density digital modules, see Opto 22 form 1556,
the SNAP High-Density Digital Module data sheet.

Bug Fixes
---------

* Corrected a problem where the following OptoScript for/next loop used to loop
once in error:

x = 0;
a = 0;
b = -1;
for n = a to b step 1
x = x + 1;
next

The same error occured if 'a' was less than 'b' and you were stepping in a
negative direction. In these situations it now will not loop. If you are
using this type of loop, check your code to make sure it still works.

* Corrected a problem where the control engine would reset when using certain
parts of ioControl's debugger for too long.

* Fixed a problem where the ioControl commands Stop Timer and Continue Timer
weren't working for subroutine local variables.

* Lifted the restriction on defining new variables and commands after running a
strategy containing subroutines. This corrects a problem that occurred when
using OptoTerminals that ran programs displaying strings from a strategy that
uses any subroutines.

* Fixed a problem that occurred when performing a string function that required
two strings, (for example, "String Equal?", "Append String to String", "Get
Substring", etc.). If the same string was passed as both the source and the
destination, one of the string descriptors was inadvertantly left on the data
stack. Each time this happened, the data stack would build down, until it
reached a point where it would cause a bus error, which would cause the brain
to reset.

===============================================================================

SNAP-LCE Controller Firmware R6.0d


February 15, 2005
Bug Fixes
---------

* Fixed a problem where writing to multiple memory map fields at once would
sometimes incorrectly process subsequent fields. This behavior resulted in
diverse effects. For example, if you changed the stream interval using the
ActiveX command SetStreamConfiguration, the new value would be copied into the
memory map but the actual stream interval would not change.

* Fixed a problem converting float values to 64-bit integers, and 64-bit


integer values to floats. This could result in math errors and incorrect
values.

* Fixed a problem with pointers using SNAP Mixed 64 Simple I/O (SNAP-ENET-S64).
Specifically, moving an S64 IO Unit from a pointer table into a pointer
variable returned the error �-29 Wrong Object Type�.

* Fixed Modbus support to correctly change between degrees F and degrees C.

* The ioControl command Set Analog Filter Weight now works correctly.

===============================================================================

SNAP-LCE Controller Firmware R6.0c


December 22, 2004

Bug Fixes
---------

* The number of email messages that can be held in the email queue has been
increased from 5 to 128 to reduce the probability that messages are dropped
when the queue fills up.

* Two string-handling problems with the comm handle "find:" command were
fixed.

* A problem with initializing comm handles which were configured for


"initialize on download" was fixed. With this problem, a situation could
occur where a comm handle couldn't be opened or closed; a -47 error (already
open) would occur if you tried to open the comm handle, and a -52 error (not
yet opened) would occur if you tried to close it.

* A serial port problem was corrected where parity and stop bits weren't being
initialized properly on open.

===============================================================================

SNAP-LCE Controller Firmware R6.0b


October 26, 2004

Bug Fixes
---------

* A bug preventing the SNAP-LCE controller from sending a BootP request has
been fixed.
===============================================================================

SNAP-LCE Controller Firmware R6.0a


September 27, 2004

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

The commands Receive String and Transmit/Receive String have changed slightly.
If you use these commands, you may need to adjust your strategy�s logic to
allow for this change.

Previously, Receive String and Transmit/Receive String would return a zero


(success) when only part of the transmitted string was received before a
timeout. These commands now return an error (-23) in this situation, so you
know the entire string was not received. All received characters are still
placed in the destination string; to see how many characters were received,
use the Get Length command on the destination string.

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

Enhancements
------------

* The control engine firmware has been improved to more efficiently transmit
characters via the onboard serial ports (using serial communication handles).

* The handling of numeric variables that are too large has been improved. In
most cases, ioControl prevents you from entering invalid numeric literal
values. If an invalid value does occur (for example, from a strategy created
with an earlier version) you will receive a -13 overflow error when trying to
download the strategy. In previous versions, some invalid values not corrected
by ioControl could be converted to a maximum value for that variable, for
example, 3.402823e+038 for a Float Variable, or 2139095039 for an Integer 32
Variable.

* The default timeout on TCP communication handles has been increased from one
second to four seconds.

* Support for Integer 64 variables has been added to several Convert String
commands, including Convert Number to Formatted Hex String.

* The ioControl message queue in Debug mode is now more robust and includes
additional information, such as the IP address of any I/O unit listed. The
message queue and the command Copy Current Error to String now also include the
subroutine name, if applicable.

* In previous firmware versions, communications to an I/O unit were opened only


when the unit was enabled. In R6.0a, communications are opened as soon
as the strategy is run, whether or not the I/O's "Enable Communication" box is
checked. If an I/O unit is unreachable by the controller's network
configuration, a -412 error will be placed in the error queue immediately, with
no timeout delay. If an I/O unit is configured correctly, but unreachable
because of a physical issue (e.g., unit turned off, bad cable, etc.), an error
will be received only if you attempt to enable communications to the I/O unit.

Bug Fixes
---------
* Some commands that did not handle error conditions correctly have been fixed.
For example, a command might have given unexpected results when passed a null
pointer, an invalid index, an invalid length, or a string not long enough to
hold the command's result. In some cases, if the command was called many times,
it could cause the control engine to run out of resources and reset.

* Some commands that return result codes were returning more or different error
codes than those documented for that command. These error codes have been
corrected or added to the ioControl Command Reference and the online Help.

IMPORTANT: In some cases, these changes to error codes may require a change to
your strategy. Instead of checking for a specific error code, we recommend
checking for return codes less than zero. All error codes in ioControl are
negative numbers.

* Several issues with Integer 64 values have been corrected. For example, the
command Transmit Numeric Table, when using a Integer 64 table, would mask
the four most significant bytes of each Integer 64 element.

* The default timeout for FTP communication handles is now 30 seconds, as


documented, rather than 30000 seconds.

* The Move command now works as documented with respect to Up Timers (the value
is changed and the timer immediately starts from zero). In previous versions,
a Move (or assignment in OptoScript) would just change the value but not start
the timer.

* Problems with the following commands have also been corrected:


- Write String Table To I/O Unit Memory Map
- Read String Table From I/O Unit Memory Map
- Get Name of Chart Causing Current Error
- Get Name of I/O Unit Causing Current Error

* The command Set Analog Filter Weight now correctly sets the weight, rather
than setting the point's output value.

* The Command Running? condition now functions correctly.

* The Transmit Pointer Table and Receive Pointer Table commands now work
correctly with TCP communication handles. In previous versions, the Transmit
command did not actually place data on the wire, though it returned a zero
(success). In some cases the command caused a reboot.

* Previous firmware version did not indicate an error if the command Write I/O
Unit Configuration to EEPROM failed (e.g. if the I/O unit was not turned on or
connected). In R6.0a, errors and warnings are placed in the error queue.
Because some I/O units take longer than usual to store configurations to EEPROM
(depending on the I/O unit, it could be more than 10 seconds), you may see
timeout errors or warnings in the queue, even though the configuration was
successfully stored to EEPROM. Whatever method of storing settings you use,
it's best to double-check that your parameters were successfully stored.

===============================================================================

SNAP-LCE Controller Firmware R5.1g


July 30, 2004
Bug Fixes
---------
* Corrected a checksum error in LCP terminate-request packets that
prevented orphaned PPP links from being correctly terminated at brain
powerup or reboot.

===============================================================================

SNAP-LCE Controller Firmware R5.1f


May 24, 2004

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

OptoOPCServer R5.0 and earlier is NOT compatible with SNAP-LCE controller


firmware R5.1. You must use OptoOPCServer R5.1 or newer with firmware R5.1.

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

Bug Fixes
---------
* A command was removed in SNAP-LCE controller firmware 5.1e that was needed by
older (1.x) versions of ioDisplay. This command has been added back to firmware
5.1f so these older versions of ioDisplay will still function.

* Fixed a problem which prevented the simultaneous use of both on-board serial
ports by ioControl. Now both ports can be used at once via communication
handles in your ioControl strategy.

===============================================================================

SNAP-LCE Controller Firmware R5.1e


April 23, 2004

SNAP-LCE controller firmware R5.1e was made available briefly as a beta


version to a small number of testers, but this version was never formally
released.

Bug Fixes
---------
* Fixed the analog filter weight configuration. Previously, the command only
set the point's output value.

* Fixed point watchdog configuration so that watchdog configuration data is


always sent. Previously, watchdog configuration was only sent if the point was
to be a watchdog; if the point was not a watchdog, nothing was sent. This meant
that if a point was configured as a watchdog, then was subsequently configured
not to be a watchdog, no configuration was sent. This would leave the point in
its previous (watchdog) state.

* Fixed a bug that prevented the ioControl command "Send Communication Handle
Command" from working. This command is most commonly used with FTP
communication handles.

* Fixed the ioControl command "Receive N Characters" to return 0 if N = 0.


Previously, this behavior wasn't consistent across drivers: for the TCP driver
this command would return 0 if N = 0, but for firmware R5.1c & R.1d it would
return a -58.)

* Fixed "Receive N Characters" to work correctly when N < number of characters


ready to be received. For example, previously if you asked for 50 characters
but there were only 8 ready to be received, no characters would be received and
no error would occur. With this fix, you would receive the 8 characters and an
error code of -39 to indicate the 50 characters you requested weren't
available.

* Fixed several problems with the error queue. Errors were sometimes
misreported when inspecting a controller, for example if any errors had been
popped off the top. Also fixed errors with custom error messages with "Add
Message to Queue" and "Copy Current Error to String".

* Fixed some problems with clear latch commands (also min/max for i/o units
that support analog), mostly related to incorrect handling of ivals. In some
cases we'd try to read/update xvals even though a point was disabled, for
example.

* Fixed "Convert IP Address String to Integer 32" which wasn't initializing


something correctly, sometimes would return an incorrect value.

* Fixed "Move Numeric Table to Numeric Table" which wasn't moving anything.

===============================================================================

SNAP-LCE Controller Firmware R5.1d


March 26, 2004

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

OptoOPCServer R5.0 and earlier is not compatible with SNAP-LCE controller


firmware R5.1. You must use OptoOPCServer R5.1 or newer with firmware R5.1.

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

Bug Fixes
---------
* Fixed a problem where persistent string variables were not correctly retained
after cycling power to the brain.

* Fixed a bug where PPP initialization would sometimes fail.

===============================================================================

SNAP-LCE Controller Firmware R5.1c


March 19, 2004

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

OptoOPCServer R5.0 and earlier is not compatible with SNAP-LCE controller


firmware R5.1. You must use OptoOPCServer R5.1 or newer with firmware R5.1.

********** IMPORTANT ************ IMPORTANT *********** IMPORTANT ***********

Enhancements
------------
* Added COM port support so users can use the built-in COM ports on the SNAP-
LCE controller via a strategy.

* Added a DNS Update client with PPP interface only. This client updates the
hostname-to-IP-address association on a DNS server when the IP address for the
local PPP interface changes. Note that this feature does not include the
ability to resolve host names to IP addresses.

* Added logic to the PPP protocol to allow use of LCP Echo Request/Reply with
devices having PPP stacks that don't implement that feature. It now treats a
code-rejected LCP Echo Request as a successful reply.

Bug Fixes
---------
* Fixed a problem where the "Get Pointer From Name" command didn't work for
persistent tables.

* Fixed a bug related to receiving strings where one character too many would
be received under certain conditions.

* Fixed a bug where the "delete" command was not properly closing a
communication handle for the file driver. This could cause the communication
handle to not work correctly if if you tried to use it after using the "delete"
command.

* Fixed a problem which would affect ioDisplay and the OptoOPCServer trying to
retrieve persistent variable data.

* Corrected a problem with changing the value of a string when using


ioControl's debugger. Symptoms of this problem could include: 1) No change to
the string; 2) Only part of the input data would be placed into the string; 3)
Too much data would be placed into the string, possibly overwriting other data
in memory.

* Corrected problem where the "Verify Reverse CRC-16 on String" command wasn't
initializing the string starting index, thus causing a potential bus error.

* Corrected the CCITT calculation used for the "Verify Reverse CCITT on String"
command.

* Corrected problem where, if a bad index was passed, "Get Nth Character" was
returning error code -42 instead of -12 as stated in the documentation.

* Fixed bug using flash memory. If the first of a page of data was already in
flash, none of the page was written to flash, causing a failure if the second
half of the page differed from what was in flash. This problem was discovered
by a customer trying to save a binary file with many 0xFF chars in a row.

* Fixed a problem where counters would get cleared by ioControl after an


Ethernet timeout. Specifically, counters would be reconfigured, even if
already configured correctly, thus clearing any counts already present.

===============================================================================

SNAP-LCE Controller Firmware R5.1b


February 13, 2004

SNAP-LCE controller firmware R5.1b was made available briefly as a beta


version to a small number of testers, but this version was never formally
released.

===============================================================================

Initial Release
SNAP-LCE Controller Firmware R5.1a
November 21, 2003

======================================================================

How to Get Help


---------------
If you have any questions about this product, contact Opto 22 Product
Support Monday through Friday, 8 a.m. to 5 p.m., Pacific Time.

Email: support@opto22.com

Phone: 800-TEK-OPTO (835-6786)


951-695-3080

Fax: 951-695-3017

Web: support.opto22.com

Please provide the following information about your system to the


Product Support engineer:

- Version of this product


- PC configuration (type of processor, speed, memory,
operating system)
- A complete description of your hardware system, including:
- jumper configuration
- accessories installed (such as daughter cards)
- type of power supply
- types of I/O units installed
- third-party devices installed (e.g., barcode readers)
- Control engine firmware version
- Any specific error messages seen

Anda mungkin juga menyukai