CAN buses are often constructed with many nodes placed physically close together. When these “clumps” of nodes are spaced a long distance from other nodes on the bus, random data errors can occur. A “message priority inversion” error causes a high-priority message to receive low-priority placement after arbitration.
Uneven node spacing can also affect the ACK procedure in a CAN message. If a message is not properly cknowledged because of interruptions from reflected waves, an error is generated with each occurrence until the controller reaches an error limit that is internally set by the CAN protocol.
The controller places itself in a bus-off state when this internal limit is reached so that a single node cannot block all communication on the bus.