S32K144 CAN bus - Bus Off state can not be reached

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

S32K144 CAN bus - Bus Off state can not be reached

Jump to solution
507 Views
szblaci
Contributor III

Hi!

I am using S32K144 MCU for a CAN application. Basically it is working fine but the the bus off state is not activated. 

The application is sending some CAN frames to the bus when I disconnet one of the CAN lines. The Transmit Error Counter (ECR[TXERRCNT]) is increased by 8 till 128. The FLTCONF in the ESR1 register is set to 01 (error passive state) This is correct. But after this the counter remians 128 and does not count furher (over 255 to reach the bus off state). 

Do you have any idea what can be the problem?

Thanks in advance!

regards

Laszlo

 

Tags (3)
0 Kudos
1 Solution
472 Views
PetrS
NXP TechSupport
NXP TechSupport

Hi,

this is behavior as per CAN standard, when transmitting node is the only one on the bus and so does not get ACK from other nodes, that is the situation you got probably. For ACK error detected, if node is in error passive state, the TXERRCNT is not incremented. During startup, if node is in error active state, TXERRCNT is incrementing for ACK error detected and stops at value 128. 
You should get Bus Off when transmitting message and detecting bit error, try one of next shorts; CANH-CANL, CANH-GND, CANL-Vbat

BR, Petr

View solution in original post

0 Kudos
2 Replies
473 Views
PetrS
NXP TechSupport
NXP TechSupport

Hi,

this is behavior as per CAN standard, when transmitting node is the only one on the bus and so does not get ACK from other nodes, that is the situation you got probably. For ACK error detected, if node is in error passive state, the TXERRCNT is not incremented. During startup, if node is in error active state, TXERRCNT is incrementing for ACK error detected and stops at value 128. 
You should get Bus Off when transmitting message and detecting bit error, try one of next shorts; CANH-CANL, CANH-GND, CANL-Vbat

BR, Petr

0 Kudos
448 Views
szblaci
Contributor III

Hello Petr,

Sorry for the late replay. You are right , this is a CAN issue not MCU. I chekced again the CAN specification and I found what you have mentioned. In error passive mode the counter is not increased in case of ACK error. 

Thanks a lot!

best regards

Laszlo

 

0 Kudos