XC2765 Multican BUS OFF behaviour

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Not applicable
Hello!

As far as I concern, the XC2765's Multican node doesn't go into the BUS OFF state when it must. I'm trying the force the BUS OFF state(for testing). To do that, one of the nodes on a CAN bus is configured to send a lot of messages with the wrong baudrate. But for some reason Rx Error counter in my XC2765 MCU stops at value of 136. The Error Warning Limit interrupt is generated normally, but the BUS OFF interrupt is not generated, NSRx.BOFF bit is not set and thus Multican doesn't go in BUS OFF state.

What is the reason for that? I've encountered similar behaviour on another MCU. May be I understand the logic of CAN controller in the wrong way?
0 Likes
2 Replies
Not applicable
For a node to go "Bus Off" its transmit error count must be greater or equal to 256. The rules that determine how the receive and transmit error counters work are complex, especially when you have to take into account how the nodes interact with each other as they change from being error active to error passive - the CAN specification has the full story.

Can you get your test node to send onto a working bus which is running as a different bit rate?
0 Likes
Not applicable
As far As I remember generating a BUS OFF error is not so easy without dedicated tool (such as traminator)

I do think short-circuiting CANH and CANL gives good results as a first approach for testing...
Transceivers includes protections so that there is no particular risk to destroy anything while short-circuiting.

Vincent
0 Likes