MSCAN - Identifying Bus-Off

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MSCAN - Identifying Bus-Off

1,644 Views
pammu
Contributor I
I am faced with two problems:
1. After reaching the bus-off condition, is there any way to identify using the MSCAN controller that the controller has recovered back to normal condition from the Bus-Off state?
 
2. Is case of any errors, I want to clear the transmit buffers. How do I do it? Aborting the message is not yielding correct results.
 
Labels (1)
0 Kudos
1 Reply

307 Views
Alban
Senior Contributor II
Hello,
 
Answers, as usual, depends on which device you are using.
 
1- msCAN in BOSCH mode is different to ISO mode.
One is supposed to recover after 128x11 Recessive bits whilst the other one should NEVER recover without intervention.
By putting the controller in soft reset, the user has access to the Error Counters. If the counter is above 255, it is in BUS OFF.
The simpler is still to have a state machine and detect the Bus Off with the Error Interrupt.
 
2- The other possibility would be to put the module in Soft Reset but it can violate the conditions on the Bus. Once the value is in TX buffers, this is the only other solution to unschedule them, as far as I know. This is because this is not how the CAN specification is supposed to be interpreted.
 
Cheers,
Alban.
0 Kudos