Special function protocols
CANopen offers three specific protocols for generating a special network behavior:
- The synchronization (SYNC) protocol enables synchronous network behavior.
- The emergency (EMCY) protocol can be used to inform other network participants about device-internal errors.
- The time-stamp (TIME) protocol is used for the adjustment of a unique network-time.
Synchronization (SYNC) protocol
The SYNC protocol is transmitted periodically by the SYNC producer. The time period between two consecutive SYNC messages is the communication cycle period. The SYNC message is mapped to a single CAN CC frame with the identifier 80h according to the pre-defined connection set. By default, the SYNC message does not carry any data (DLC = 0). Devices that support the CiA 301 version 4.1 or higher may optionally offer a SYNC message, which provides a 1-byte SYNC counter value. Therefore, synchronous behavior of several devices can be coordinated more comfortably.
Emergency (EMCY) protocol
The emergency messages are triggered by device-internal errors. The EMCY message, transmitted by the EMCY producer, is mapped to one single CAN CC frame, which covers up to eight byte of data. The data content is defined as a 1-byte error register (index 1001h of the local object dictionary), a 16-bit emergency error code, and up to 5 byte of manufacturer-specific error information. By default, a device that supports the EMCY producer functionality assigns the CAN-ID 80h + node-ID to the emergency message. An emergency message is transmitted only once per error event. As long as no new errors occur on a device, no further emergency messages are transmitted. Zero or more EMCY consumers may receive these messages and may initiate suitable, application-specific counter measures.
Time-stamp (TIME) protocol
The TIME protocol enables the user of CANopen systems to adjust a unique network time. The time-stamp is mapped to one single CAN CC frame with a data length code of 6 byte. These six data bytes provide the information "time of day". This information is given as milliseconds after midnight (data type: Unsigned28) and days since January 1, 1984 (data type: Unsigned16). By default, the associated CAN frame has the CAN-ID 100h.