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.

TCAN1042HV: Signal traffic from TX

Part Number: TCAN1042HV

Hi team,

I have some question about TCAN1042. But this is not a real condition. It's only my question.

I would like to know that if the TCAN1042 TX has traffic and then cause the CANH/L couldn't output.

1. Could IC reset except using Vcc re-power on?

2. What condition may CANH/L couldn't have normal output?

3. When TCAN1042 hung, what does IC do internal?

Regards,

Roy

  • Hey Roy,

    Thanks for coming to E2E with these questions. From what I understand, you're asking if there are other ways besides power down that would cause bus communication to stop. Please let me know if I've misunderstood you.

    1. Thermal shutdown will also cause the device to stop communication and go into a protected mode, similar to an under voltage on VCC/reset on VCC power. Also, if VIO is lost the device will go into a high-impedance state on the bus pins, stopping any communication from being possible.
    2. Any kind of short on the CAN bus would cause distortion in the waveforms on CANH or CANL. CANH short to battery or GND, CANL short to battery or GND, or CANH and CANL shorted together; all of these conditions will affect the waveforms, but may still allow RXD to report the correct communication since the RXD output is based on a differential. The same conditions I listed in number 1 will also have an effect on CANH and CANL, switching the pins to high-impedance and disabling the driver. Loss of termination will also cause the CANH and CANL output to not be normal, increasing the dominant differential voltage and increasing the time for CANH and CANL to recede to the recessive voltage level.
    3. It depends on what you mean by hung, when the TXD pin is stuck dominant for longer the tDST, the device has a mechanism called Dominant State Timeout where the bus driver gets disabled. The driver gets re-enabled when a recessive edge is seen at the TXD pin. Other than that, if the transceiver gets stuck at a certain state, the controller will see this because the bits it is transmitting won't match what the RXD reports back from the CAN bus. As this happens, the controller sees this as an error and begin transmitting error frames. As it continues to transmit error frames, there is a counter on the controller that increments every time an error is detected. If the bus remains stuck, this counter will continue to increment, and once it reaches a certain threshold it will go into a bus off state, where it will no longer transmit any frames. This is the built-in error handling in the CAN protocol.

    Please let me know if I misunderstood your question, or if you have any other questions about what I posted.

    Regards,

  • Hi Eric,

    Thank you for your detailed comments.

    So i can make a conclusion that in TCAN1042 there has no possibility to have a dead loop such as I2C have (although TCAN1042 play as a tranceiver) ?

    https://community.st.com/s/question/0D50X00009XkWMU/i2c-slave-hangs-on-low-scl-signal  

    Roy

  • In short, 

    if CAN transceiver may hang like I2C(Master send signal and slave is fail that it couldn’t send back the signal.) or not.

    Roy

  • Roy,

    CAN is not a master-slave topology, so the chance for something like this to happen isn't there. The only time that a CAN bus would be held dominant to not allow for any other communication is through a hardware fault, meaning a physical short, on the bus.The CAN protocol has error handling built-in so that nodes which may be causing problems eventually will stop transmitting so that other nodes can properly communicate.

    Regards,