|
Cdios Controller Commands
V3.0
Cdios Controller Commands V2.8
Cdios download page
Addition to V2.8:
- Support added for 6170 V2.5 quad mV/V input
- Support added for 6166 V2.6 update
- Support added for 6182 V2.5 incremental encoder
All CDIOS messages are presented as 8 bytes long. When variable
length messages are selected, the part of the message that is not send over
the CAN bus is represented in italic/light gray text.
Cdios command / reply / event / error messages
- Any Cdios command or reply is a CAN message with a maximum of 8 data bytes.
The
first 3 data bytes contain:
- a command / reply / event / error code
- a module ID
- sometimes a selector
- The module address can be 0-15 to address an I/O module (selected by it's
DIPSWITCH).
Anything above 15 (0FFh is preferred) will address the Cdios
controller itself.
Command reply- event- error code |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
0-15 |
Selector or zero |
additional bytes |
- A command only returns a single reply / error message. (confirmation)
- A reply code is just the copy of the command code (can be suppressed)
- An event code is similar to a reply code, with bit 6 set to one
- An error code is similar to a reply code, with bit 7 set to one (always
reported)
General Cdios error messages:
When a command to the Cdios controller somehow generates an error, the error
reply message is sent back.
The reply code will be a copy of the command code with bit 7 set:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
Command with bit 7 set |
Copy of Module ID |
0 |
General Error Code |
Error status1 |
Error status2 |
0 |
0 |
|
Parameter |
Value |
Description |
|
General Error Code |
0 |
Identifies that 'Error status' contains bitwise command specific error
indications. 'Error status' will be zero when 'General Error Code' is
nonzero. |
|
1 |
Module ID is not connected to any module |
|
2 |
Module ID is connected to an unsupported module |
|
3 |
Command is unknown in addressed module |
|
4 |
Cdios system is still in it's initialization phase (500 mS after
power-up or Cdios controller reset) |
|
5 |
Addressed Module contains an unsupported version number |
|
6 |
Command is not supported by this software version of the module |
|
7 |
I/O module communication error |
|
8 |
CDIOS controller is busy with EEPROM programming, cannot
evaluate the command |
|
Error status 1 |
Bit no |
Bit function description |
|
Error status 2 |
Bit no |
Bit function description |
Command code 01h: Identify I/O modules
This commands reads a part of the internal module type, serial number and
software version table.
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
01h |
FFh |
Selector |
0 |
0 |
0 |
0 |
0 |
Selector selects one of twenty five parts of the table
|
Reply |
Module ID |
Selector |
4 |
5 |
6 |
7 |
8 |
|
01h |
FFh |
0 |
type 0 |
version 0 |
type 1 |
version 1 |
0 |
|
1 |
type 2 |
version 2 |
type 3 |
version 3 |
0 |
|
2 |
type 4 |
version 4 |
type 5 |
version 5 |
0 |
|
3 |
type 6 |
version 6 |
type 7 |
version 7 |
0 |
| 4 |
type 8
|
version 8 |
type 9 |
version 9 |
0 |
| 5 |
type 10 |
version 10 |
type 11 |
version 11 |
0 |
| 6 |
type 12 |
version 12 |
type 13 |
version 13 |
0 |
| 7 |
type 14 |
version 14 |
type 15 |
version 15 |
0 |
| 8 |
1 |
version of Cdios controller |
0 |
0 |
0 |
| 9 |
Serial number of I/O module #0
(lsb first) |
0 |
| 10 - 23 |
Serial numbers of I/O modules
#1 - #14 |
0 |
| 24 |
Serial number of I/O module #15
(lsb first) |
0 |
To read the complete table, 25 command messages have to be given (total 50
messages over the bus), note:
- selector value 8 is supported by Cdios controller version 1.2 and higher
- selector value 9 - 24 is supported by Cdios controller version 2.0 and
higher
Currently the following module types will be returned (module type will be
type number - 6000, decimal) :
- 000: no module found at this ID
- 001: Cdios controller
- 153: Octal digital input module 6153
- 156: Octal digital output module 6156
- 159: Quad relay output module 6159
- 160: Quad analog (V/mA) input module 6160
- 162: Triple Pt100 input module 6162
- 163: Triple load cell input module 6163
- 164: Quad analog output module 6164
- 166: Single stepper motor controller/driver module 6166
- 167: Single analog servo motor controller/driver module 6167
- 168: Single analog servo motor controller 6168
- 170: Quad analog (mV/V) input module 6170
- 182: Single incremental encoder input module 6182
- 190: Single RS232 interface module 6190
- 254: unsupported module software version found at this ID
- 255: unsupported module found at this ID
Cdios controller software version will be 30 for version 3.0
| Cdios controller version |
1.0 |
1.1 |
1.2 |
1.3 |
2.0 |
2.1 |
2.2 |
2.3 |
2.4 |
2.5 |
2.6 |
2.7 |
2.8 |
3.0 |
| Supported I/O Module |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Type |
version |
| 6153 |
1.0 |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 1.1 |
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.0 |
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 6156 |
1.0 |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 1.1 |
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 1.2 |
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.0 |
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 2.6 |
|
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
| 6159 |
1.0 |
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.0 |
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 6160 |
1.0 |
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.0 |
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.1 |
|
|
|
|
|
|
|
|
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 6162 |
1.0 |
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.0 |
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.1 |
|
|
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 6163 |
1.0 |
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.0 |
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 6164 |
2.0 |
|
|
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 6166 |
1.0 |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 1.1 |
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 1.2 |
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.0 |
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 2.6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
| 6167 |
2.0 |
|
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
x |
x |
| 2.1 |
|
|
|
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
| 2.2 |
|
|
|
|
|
|
|
|
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 2.6 |
|
|
|
|
|
|
|
|
|
|
|
|
x |
x |
| 6168 |
2.0 |
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
| 6170 |
2.5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
| 6182 |
2.5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
| 6190 |
2.0 |
|
|
|
|
|
|
|
x |
x |
x |
x |
x |
x |
x |
| 2.5 |
|
|
|
|
|
|
|
|
|
|
x |
x |
x |
x |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
81h |
FFh |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Selector parameter out of range |
Command code 02h: Cdios controller
configuration
This command sets internal Cdios controller configuration
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
02h |
FFh |
0 |
Confirm |
Reset |
Change of State |
Variable Length |
0 |
|
Parameter |
Value |
Default |
Description |
|
Confirm |
0 |
1 |
disable confirmation reply messages |
|
1 |
enable confirmation reply messages (default) error and event messages
cannot be disabled |
|
Reset |
0 |
0 |
No I/O module reset checking |
|
1 |
Reset event is sent when any I/O module has an internal low power supply
(brown out) or software failure reset (default) |
|
Change of State |
0 |
0 |
No I/O module change of state checking |
|
1 |
Modules are checked for change of state (internal status or
input change). Individual state checking mask bits in the I/O modules have to be
set also to enable change of state event messages. |
| Variable
Length |
0 |
0 |
All CDIOS command / reply / event / error messages are 8 bytes
long (unused bytes are filled with zero) |
| 1 |
The last 1-6 bytes of the CDIOS messages will be suppressed,
this will reduce CAN bus load. The suppressed bytes will be represented in
italic / lightgray text. |
Confirmation reply message (suppressed when 'Confirm' is 0):
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
02h |
FFh |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
82h |
FFh |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Confirm parameter out of range |
|
1 |
1 = Error parameter out of range |
|
2 |
1 = Change of state parameter out of range |
Command code 03h: SYNC
This commands gives a SYNC pulse to all I/O modules or enables/disables the
SYNC pulse directly from the CAN bus.
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
03h |
FFh |
0 |
Sync |
0 |
0 |
0 |
0 |
|
Parameter |
Value |
Description |
|
Sync |
0 |
Synchronizes all I/O modules; outputs are updated (if output latches are
written), inputs are latched. This enables synchronization on a module level |
|
1 |
Disable CAN generated Sync pulse |
|
2 |
Enable CAN generated Sync pulse This enables synchronization on a bus wide
level |
Confirmation reply message (suppressed when 'Confirm' is 0):
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
03h |
FFh |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
83h |
FFh |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error Status |
0 |
1 = Sync parameter out of range |
Command code 05h: Store configuration
This command stores the current or the default CDIOS controller configuration
into internal EEPROM memory. The configuration is restored from this memory
after power on or a reset command.
|
Command |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
05h |
FFh |
Selector |
43h |
44h |
53h |
0 |
0 |
|
Parameter |
Value |
Description |
|
Selector |
0 |
Store current configuration |
|
1 |
Change configuration into default and then store it. |
The internal EEPROM erasing / programming takes up to
20 milli-seconds, then the reply message is send.
The confirmation reply message for this command is NEVER
SUPPRESSED.
|
Reply |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
05h |
FFh |
0 |
0 |
0 |
0 |
0 |
0 |
Possible error message:
|
Error |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
85h |
FFh |
0 |
0 |
Error Status |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Error status |
0 |
1 = Selector parameter out of range |
| 1 |
1 = 'password' bytes 4-6 in command are not equal to 43h,44h,53h |
| 2 |
1 = Configuration EEPROM programming error |
| 7 |
1 = Programming already busy (on another module) |
Events
If an I/O module for some reason fails or resets itself (or has an internal
configuration checksum error) and the reset parameter is set to one, the reset
event message is sent:
|
Event |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
42h |
0 - 15 |
0 |
Reset Status |
0 |
0 |
0 |
0 |
|
Parameter |
Bit |
Description |
|
Reset Status |
0 |
1 = I/O module was reset by internal software failure (crash) |
|
1 |
1 = I/O module was reset by an internal low power supply (brown out) |
|
2 |
1 = I/O module has an configuration checksum error, the default
configuration is used |
|
3 |
1 = I/O module failed (does not communicate any more) |
|
4 |
1 = I/O module came on-line (after it failed...). Bit 0-2 may be
set also... |
If the DeviceNet I/O connection's expected packet rate is nonzero, the CDIOS
controller will send an empty message to keep the connection alive when the
trigger timer expires. Note that all eight bytes of this message will be
transmitted, the 'variable length' configuration is ignored
|
Event |
Module ID |
3 |
4 |
5 |
6 |
7 |
8 |
|
47h |
0FFh |
0 |
0 |
0 |
0 |
0 |
0 |
|