This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM4376: TCAN1042 Bus-off

Guru 10085 points
Part Number: AM4376

Hi Sitara support Team,

The following phenomena occur during equipment inspection
at my customer factory.


Connection status:
AM4376 ⇔ TCAN1042 ⇔CAN H / L (open)
To send data from AM4376
(only in the inspection process, it is necessary to inspect in open state)


Current status:
When CAN H/L is open, there are a few units that detect the bus-off
and the most units that do not detect bus-off.

Here is

NG_OK Log

NG unit; it counts up re-started and bus-off.
�B
root@Antenna:~# ip -details -statistics link show can0
6: can0: <NOARP,UP,ECHO> mtu 16 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
 link/can promiscuity 0
 can <TRIPLE-SAMPLING,BERR-REPORTING> state BUS-OFF (berr-counter tx 248 rx 2) restart-ms 100
 bitrate 250000 sample-point 0.875
 tq 250 prop-seg 6 phase-seg1 7 phase-seg2 2 sjw 2
 c_can: tseg1 2..16 tseg2 1..8 sjw 1..4 brp 1..1024 brp-inc 1
 clock 24000000
 re-started bus-errors arbit-lost error-warn error-pass bus-off
 917 �@184799 �@ 0 918 �@�@ 918 918
 RX: bytes packets errors dropped overrun mcast
 1507760 188470 184799 0 0 0
 TX: bytes packets errors dropped carrier collsns
 0 0 0 10216 0 0
====


OK unit;

root@Antenna:~# ip -details -statistics link show can0
6: can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 1000
 link/can promiscuity 0
 can <TRIPLE-SAMPLING,BERR-REPORTING> state ERROR-PASSIVE (berr-counter tx 0 rx 127) restart-ms 100
 bitrate 250000 sample-point 0.875
 tq 250 prop-seg 6 phase-seg1 7 phase-seg2 2 sjw 2
 c_can: tseg1 2..16 tseg2 1..8 sjw 1..4 brp 1..1024 brp-inc 1
 clock 24000000
 re-started bus-errors arbit-lost error-warn error-pass bus-off
 0 �@�@ 1200908 0 1 1 �@�@�@�@ 0
 RX: bytes packets errors dropped overrun mcast
 9607280 1200910 1200908 0 0 0
 TX: bytes packets errors dropped carrier
.


Confirmed items:
1. In a few units that that detects bus off, if only the AM4376 is replaced with
a component (TCAN1042 is not replaced), the bus off is no longer detected.
Based on this, it is speculated that this status is occurring due to
individual variation of AM4376.
2. Insertion of a terminating resistor between CAN_H/L does not detect bus-off
even the units that detect bus-off.

Q1. What is the difference between detecting and not detecting bus-off?
Q2. Is it correct that the units detects bus off is also a normal product and
there no problem in inserting a terminating resistor like the original product
and using it correctly?

Best regard,
Kanae

  • Hello Kanae,

    The CAN bur termination (120 ohm each) must be presented at the two physical end points of the CAN network. The CAN standard says that If during start-up only 1 node is online, and if this node transmits some message, it will get no acknowledgment, detect an error and repeat the message. It can become ’error passive’ but not ’bus off’ due to this reason. The error count reaches to 0x80. 

    If there is no termination, the bus-off doesn't mean anything wrong in the part (AM4x, or TCAN1042). If you probe CANH and CANL, the voltage level may not be in the valid range (should be around 2.5V).

  • Hi QJ Wang,

    Thank you for your support!

    My customer checked the wave-forms, the results are the following status,

    -When an oscilloscope probe is applied to the NG board where the bus-off occurs,
     the bus-off does not occur. He cannot check the waveform as a NG board.
    -No difference in waveform quality was observed between the NG board and the OK board
     where this bus-off did not occur.

    I would like to make sure about your post.

    "The CAN bur termination (120 ohm each) must be presented at the two physical end
     points of the CAN network.
    ...
     It can become 'error passive’ but not 'bus off’ due to this reason."


    Is this meant that
    #1. "In the open state, 'bus off cannot be occurred, 'error passive’must be occurred."?
     or
    #2. "In the open state, bus off may occur."?

    If the conclusion is #2.,
    -The board which detects "bus off" is not defective including the CPU and the driver.
    -All the boards need is the termination, my customer should correct their inspection
     from the opened state to be terminated.
    -If the inspection procedure is changed, they can ship the board as a normal product.

    Is my understanding correct?

    Best regards,
    Kanae

  • Hi QJ Wang,

    My customer would like to make sure the following.

    In your answer, they understand that...

    - It always becomes 'error passive’when it is open status.
    - This 'error passive’state makes that the error counter increases from "127" to "255".
    - Therefore, the open status may cause 'bus-off'.

    Is this understanding correct?

    I am waiting for your reply including my last questions dated 19-March.

    Best regards,
    Kanae

  • Hi QJ Wang and Sitara support Team,

    Do I have to move the interface forum to get the answers?
    I will post a new thread, if you need.

    Best regards,
    Kanae

  • Hello Kanae,

    A correct CAN bus topology is important to avoid CAN communication errors caused by signal reflection or disturbance. For CAN communication test, at least two CAN nodes are required. If one node is not in active, the two nodes CAN network looks as one node + terminator. The CAN specification says:

    "Start-up / Wake-up: If during start-up only 1 node is online, and if this node transmits some message, it will get no acknowledgment, detect an error and repeat the message. It can become ’error passive’ but not ’bus off’ due to this reason." in section 8 (Fault Confinement).

    If testing with only one node without termination, the bus-off doesn't mean anything wrong in the part. 


  • Hi QJ Wang,

    Thank you for your support!
    The customer is basically convinced by the explanation so far,
    so I think it has been resolved. 

    Best regards,
    Kanae