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: CRC error actions

Part Number: TCAN4550


Hi,

Some simple questions I did not find ansfer from sllu270 or tcan4550 - most likely andwers are in either - I just can not see.

How is tcan4550 acting when a CRC occurs when receiving message, does it anyway push message into RX-FIFO or BUFFER? How can user detect that there was a CRC- error?

BR, ristoH

  • Risto,

    Thanks for bringing this to our attention. The TCAN4550-Q1 MCAN core follows the Bosch MCAN definition, which can be found in full here. To answer your question,the CAN message will be partially written to the memory, with no indication of a new message to the user. This happens because the CRC is checked at the end of the CAN frame, so the controller will write the message to memory until it detects the CRC error, then immediately stop. 

    To detect this, the PED (protocol error in data phase) interrupt will be flagged. Also, the DLEC (if the BRS flag is set to 1) or LEC bits can be checked. Reading a value of 7 in the LEC/DLEC bits indicates a CRC error.

    Please let me know if you have any other questions.

    Regards,

  • Hi Eric,

    Thank you.

    If using FIFO and the controller is detecting this CRC- error and will stop writing, will it 'reuse' this FIFO location again for new incoming message or will it step to next FIFO location?  What is your experience about CRC- errors, are they usual ant/or is there a relation between CRC- errors and network traffic/collisions?

    Best Regards,

    risto

  • Risto,

    It will indeed just reuse the same memory location, since the memory location would only be incremented on the indication of a reception of a new message. And since the CRC error would stop this indication, the memory address would not get incremented.

    Network traffic/collision errors can come up as CRC errors sure, but more than likely they would show up as bit errors or stuff errors, something where the controller recognizes the bit returned was not correct, but not specific to the CRC. What exactly do you mean by "ant/or"?

    Regards,

  • Hi Eric,

    This is clear, I have now good enough understanding about error flags of tcan4550 and CAN bus errors. 

    Sorry I did not check my text carefully before sending and there seemed to be mysterious 'ant/or' meaning 'and'. 

    Thank you and best regards,

    Risto