Where does CAN BUS arbitration occur

Hello Maaz,

The arbitration is done by the CAN controller (a piece of hardware implemented on the chip). Everything is done automatically. If the CAN bus is busy with higher priority message then the arbitration is lost and the hardware (CAN controller) initiates a new one until the message is sent. For info on error handling have a look at this thread. It is worth to read also CAN-getting started, although written by David Smart for Mbed OS 2.

Best regards, Zoltan

1 Like