Network Arbitration of CAN

For a highly populated network, the performance depends upon the data transmission. in a CAN network, the data each node sends and receives moves it all. it is like the network should be shared efficiently among all its constituents.

Some ECU’s (Nodes) in a Car

we should remember that it is not like any Master-slave communication, literally any node and all nodes will send and receives the data according to its function which of course the priority of transmission depends on the situation. the goal of the network arbitration here is to push and pull data reliably by every node.

For example in a computer network connected with Ethernet the {CSMA/CD} carrier sense, multiple access with collision detection will be In charge if there is a collision it stops the transmission of data and starts again after some time.

The CAN bus network arbitration is more like an updated version of Ethernet’s network arbitration. Non-Destructive collision detection makes it easier. In the case of two messages are pushed into the network at the same time one with the least arbitration ID will win over the other one and continues to transmit, now another one will wait for some time and starts transmitting again. the least arbitration ID denotes the message’s priority which is decided by the designer at the time of Designing the network, Message priority is very important in the case of an autonomous car, like the intrusion detection message should reach the breaking system ASAP within milliseconds.

Here, two nodes will start pushing the messages without acknowledging other nodes activity meanwhile it also reads the data from the bus, in the above case both nodes 1 &3 pushes their arbitration id’s and in the meantime when node 3 sends a recessive bit (1) and observes dominant bit (0) it will stop transmitting messages and waits for some time and starts again. there will be different clock speeds for each node to avoid the mess in the network.