Electronic – CAN bus signal integrity

cansignal integritysingal

The channels are CAN_H (red), CAN_L (blue), and CAN_H-CAN_L (brown).

It can be observed in the diagram below that CAN_H-CAN_L has an acceptable signal shape. However, both CAN_H and CAN_L look poorly to me. And actually the device is not running in a noisy environment. I have two questions:

  1. Do you think signal integrity is an issue here?

  2. CAN_H-CAN_L sometimes has high voltage level of 1.65 V (left side part), while sometimes it has a high level of 2.06 V (right side part). Do you think this is a problem?

Enter image description here

Best Answer

  1. No. The differential signalling is performing as intended.
  2. No. As long as the "common mode voltage" does not exceed the ratings of the transceiver. And the maximum DC ratings, which for a CAN transceiver like the MCP2551 is -42 V to +42 V.

The twisted pair cable and the differential signalling mode make the single-end signals look like gibberish while the differential signal is not affected by the noise. You will have the occasional corrupt frame, but CAN has several features to ensure only correct frames are accepted and bad ones are re-transmitted.

  • CRC to detect bit errors.
  • Error frames. When one node detects an error, it sends an error frame, and this frame forces the bus dominant longer than the bit stuffing rule. All nodes see this.
  • Automatic re-transmit until the error limit.

I have one of these images as well. These are textbook images on differential signalling. This kind of noise is inevitable in systems with electromechanical or high power switching components.

CAN bus differential textbook image