Sensoray 2600 User Manual
Page 18

Sensoray 2600 Programming Guide
14
Transactions
Transaction error codes have the following meanings:
In the above table, the “Com” column indicates whether the error type is applicable to comport transactions. Note that all of the
error types are applicable to gateway transactions.
Symbolic Name
Com
Description
Error Code LSB
GWERR_BADVALUE
Yes
An illegal argument value was specified. For example:
* MM handle is greater than or equal to the number of declared MM’s.
* IOM port number is outside the range 0 to 15, or 0xFF for the gateway.
* A channel number does not exist on the target IOM.
* A numerical value exceeds permitted limits.
Illegal value’s position
in the function
argument list.
GWERR_IOMCLOSED
No
An attempt was made to schedule an IOM action for an IOM that is not
open. This can happen if the application attempts to communicate with
an IOM that has not been registered by S26_RegisterAllIoms().
Iom port number of the
closed module.
GWERR_IOMERROR
No
One or more IOM communication error flags (CERR) are asserted. See
the IomStatus[] array, which is populated by
S26_SchedExecute()
, for details.
Iom port number of the
module for which
CERR
is first detected.
GWERR_IOMNORESPOND
No
Error(s) were detected in an MRsp within the gateway response packet.
The application should assume that all of the associated IOM’s scheduled
actions, as well as all later actions that were scheduled for this and any
other IOMs, failed to execute properly. This error can happen if:
* MRsp module identifier field does not contain the expected value, or
* MRsp payload length differs from that specified by the length field, or
* MRsp length field does not match the expected value.
Iom port number
associated with the
MRsp.
GWERR_IOMRESET
Yes
The reset flag (RST) is asserted on the MM or one or more IOMs. If the
port number indicates an IOM (i.e., port number is in the range 0x00 to
0x0F
) then you may analyze the contents of the IomStatus[] array,
which is populated by S26_SchedExecute(), for details. If the port
number is 0xFF then the RST flag is asserted on the MM.
Iom port number of the
module for which RST
is first detected.
GWERR_IOMSPECIFIC
No
One or more IOM-specific status flags are asserted. See the
IomStatus[]
array, which is populated by S26_SchedExecute(),
for details.
Iom port number of the
module for which this
is first detected.
GWERR_IOMTYPE
No
An attempt was made to schedule an IOM action that is not supported by
the registered IOM type (e.g., scheduling a digital I/O action for an
analog I/O module).
Iom port number
associated with the
scheduling error.
GWERR_MMCLOSED
Yes
An attempt was made to communicate with a MM that is not open. The
application must first call S26_BoardOpen() to open the MM for
communication.
0
GWERR_MMNORESPOND
Yes
The MM failed to respond, causing the client to time-out the transaction.
See section 5.5 for a discussion of transaction time-outs.
0
GWERR_PACKETSEND
Yes
The socket driver failed to transmit the gateway command packet.
0
GWERR_TOOLARGE
Yes
This can happen in two situations:
* The command packet’s size or the expected response packet’s size
exceeds the maximum UDP payload size supported by the MM (1KB).
* Too many MCmds are present in the gateway command packet. The
middleware permits a maximum of 100 MCmds per command packet.
If this error is raised, try redistributing the transaction’s actions among
multiple transactions.
0
GWERR_XACTALLOC
Yes
Allocation failure. GWERR_XACTALLOC will be asserted by any gateway
transaction function that requires a transaction object in its argument list,
but is instead passed a null (zero value) transaction object. This can
happen if more than eight comport and/or gateway transactions exist at
the same time. See section 5.3 for more information.
0