imx6: FlexCAN error count not increasing proper at 500Kbps/ 1Mbps

Showing results for 
Search instead for 
Did you mean: 

imx6: FlexCAN error count not increasing proper at 500Kbps/ 1Mbps

Contributor III

Hi All,

i am working on flexcan driver related application on imx6q freescale processor

i have a CAN network with one node A sending continuous can frame, bus speed at 125 kbps towards node B receiving, then everything is normal well and fine.

i am generating Error Frame using Canking (CAN analyser) software from PC with 500 kbps or any other  baud rate apart from working bus speed 125kbps 

i am checking with two  processor one is with imx28(2.6.35.XX kernel) and other with imx6q (3.10.XX kernel)

for 1 min, with imx 28 , tx passive error count nearly 1000 where as with imx6q the tx passive error count(FLEXCANX__ECR -- error counter register) nearly 100 where as in CAN analyser Error frames are near to 10000 for 1 min.


1. Could you make me understand why the passive error count are different in processor and the CAN analyser are different  ?

2. looks like passive error count are not properly catched by the flexcan error count register at 500Kbps/ 1Mbps, but neatly works < 500Kbps. could anyone suggest why this happening..?

Labels (1)
1 Reply

NXP Employee
NXP Employee

Please refer to the Section 26.8.7 "Error Counter Register (FLEXCANx_ECR)" of the i.MX6Dual/Quad Reference Manual document, available on the processor's Documentation web page:

In particular, it says the following.

"If the Rx_Err_Counter increases to a value greater than 127, it is not incremented further, even if more errors are detected while being a receiver".

So, the RX_ERR_COUNTER cannot count more than 128 consecutive receive errors.

Have a great day,

Note: If this post answers your question, please click the Correct Answer button. Thank you!