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.

TCAN4550: Bus off not triggered

Part Number: TCAN4550

I'm running the CAN interface at 250 kbits/s in a custom design using the TCAN4550 interfaced

to a microcontroller. Everything seems to work, but when I disconnect the CAN wires, I see the

mode reports back as bus passive, but bus off is not reported. I'm polling 

REG_MCAN_PSR

and then testing against
REG_BITS_MCAN_PSR_BO

to check for bus off. I understood from the spec sheet that the TCAN4550
should automatically retry the CAN Tx operation and the error counter should
quickly increment to 127. What am I doing incorrectly?
  • Hi Andrew,

    Your are correct in your understanding that the TCAN4550 will automatically try to re-transmit messages unless the Disable Automatic Re-transmission (DAR) bit has been set to 1.  However, simply not having another device on the CAN bus to acknowledge a message is not treated as a transmit error because there may not be anything wrong with the transmitter.  In order for a transmit error to occur that will increase the error count and cause the device to enter a bus off state, there needs to be some sort of fault or another CAN node to throw an error flag on the message.

    I believe if you shorted CANH and CANL together while running, you would quickly see the device enter a bus off condition.  Or if you had incompatible bit rate settings between the two CAN nodes, that would also be flagged as an error and eventually result in a bus off condition.

    Regards,

    Jonathan

  • Thanks Jonathan. Shorting CANH and CANL did cause bus off to be reported.