Two sets of error codes are returned within each mechanism status message. They are command errors and mechanism errors:

ABC800 ( EECMND, EEMECHSM, d, d, h, h, d )

where d and h are decimal and hexadecimal parameter fields.


These are returned as the first parameter in all status reply messages and relate to errors in the command received from the network. The codes are returned as two hex digits and have the following meanings:

ERR# and meaning

01   Mechanism already busy

02   Out of range parameter

03   Not used

04   Invalid format

05   Monitor-mode list full

06   Invalid function

07   Mechanism interlocked

08   Operation cancelled

09   Node name not entered on Monitor-mode list


These are returned in all status messages.

Mechanism errors relate to faults that occur with the mechanism when an operation (e.g. a MOVE) is attempted. The error codes are returned as two hex digits with the following meanings:

ERR# and meaning

01   Mechanical timeout. Mechanism has not reached target position/state in alloted time. Could be a mechanical problem, initialise mechanism to return it to a known state.

02   Communications timeout. Acknowlegement/response not reveived from SMDM/BCRM in alloted time. Problem with serial link and/or module.

03   Undefined positon. Mechanism has not reached target position. Switch values show target position has not been attained or, if mechanism has encoder, encoder reading outside of tollerance band for target position.

04   Un-zeroed. Mechanism not initialised. Must be initialised before MOVE operation can be executed.

05   Wrong module. Module name (in SMDM status reponse) is incorrect. This could be for one of two reasons.

i) The wrong SMDM is connected to this serial link. Put SMDMs in correct places or reprogram offending modules.

ii) The SMDM BBRAM is corrupt, therefore the module name and probably stepcounts are also corrupt. In this case reprogram SMDM.

06   Invalid-data. Data returned over serial link has invalid characters. e.g. letters where numbers were expected or a checksum does not tally. Examine data returned by interrogating the corresponding status buffer.

08   Aborted. A pending operation has been aborted before it has started due to a STOP command being received, which may be mechanism specific or a global command ALL100.

09   BCRM Unreliable. Refers to barcode data. Of three barcode reads performed only two are in full agreement. Barcode or reader head are possibly dirty.

0A   BCRM Head absent. Refers to barcode data. Barcode reader head is not connected to BCRM.

0B   BCRM Missaligned. Refers to barcode data. Reader head and barcode not correctly aligned.

0C   SMDM negative acknowlegement #0. Module busy.

0D   SMDM negative acknowlegement #1. out of range value or direction

0E   SMDM negative acknowlegement #2. Invalid motor no. (not 1 - 4)

0F   SMDM negative acknowlegement #3. Motor not initialised.

10   SMDM negative acknowlegement #4. !+LIMIT set to zero.

11   SMDM negative acknowlegement #5. Limit switch activated.

12   SMDM negative acknowlegement #6. Not set to cycle mode.

13   ASL data invalid. Either corrupted data returned, invalid checksum or incorrect channel selected.

14   Cycling flag. Set to indicate continuous rotation of polarisation plates; rate and direction supplied in the POSITION field of status.