Why E2E When CAN has CRC?
Why E2E When CAN has CRC? Having worked with CAN protocol and CAN stack testing nearly two decades ago, we have always been fascinated by how robust CAN is when it comes to error detection. Bit errors, stuff errors, CRC errors, form errors, acknowledgement errors — CAN has a mechanism to detect all of these, along with fault confinement mechanisms such as error passive and bus-off. So, when we first came across E2E protection in the context of functional safety, we had the question: If CAN already has CRC and several other error detection mechanisms, why is another layer of protection, such as E2E, required for a FuSa application? The answer lies in understanding the boundaries within which CAN's error detection mechanisms operate. To understand how this really works, we will approach the topic as follows: Refresh the basics What does a CAN frame look like? What are the layers of a CAN stack? What are the error detection mechanisms availa...