Electronic – Understanding the guaranteed data consistency within CAN network

can

I am reading the CAN spec and it says the following about data consistency:

Data Consistency: Within a CAN network it is guaranteed that a message is simultaneously accepted either by all nodes or by no node. Thus data consistency of a system is achieved by the concepts of multicast and by error detection

Is my understanding that when no node accepts the message that the transmitter will send the message again and that the error count will increment correct?

Does the transmitter know that all nodes accepted the message based upon the acknowledge bit by the receivers? How does the transmitter know that all nodes sent this acknowledge bit on the bus and not just some of the nodes?

Best Answer

The transmitter doesn't know if all the nodes acknowledged the message during the ACK bit.

However, any node which has not received the message correctly will create an error-frame which all nodes will see - they will then discard the message. The sender will then retransmit.