Error control protocol

Heartbeat or guarding services are used to check the presence of network participants and to verify that they are still working correctly. The CANopen specification demands that each CANopen device supports either the Heartbeat or the Guarding protocol. As the Heartbeat protocol is the more flexible one and works without remote frames (RTR), it is highly recommended to use it for all new implementations.

The Heartbeat protocol is a cyclic message transmitted from one device in broadcast. This message transmits the current NMT state of the device. The cycle time for transmitting the Heartbeat message can be adjusted in object 1017h.

Heartbeat protocol

Error control message

The error control protocols use CAN messages, which are assigned with the CAN-Identifer 700h+Node-ID and  contain one data byte. Within the data, the device indicates its current network state.

Boot-up protocol

The boot-up message is transmitted on each transition from NMT state Initializing to NMT state Pre-operational. The boot-up protocol is used to signal that the device has registered on the network and is now ready to operate. The protocol uses the same identifier as the error control protocols. The 1-byte data field has a fixed value of zero.