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.

AM335x Linux SDK 6.0 DCAN behavior

Other Parts Discussed in Thread: AM3352

Hi Team,

  Nowadays, I receive one request from a leading customer. They're using AM3352 as the main platform for industrial application. OS is Linux SDK 6.0.

  In their application, sometimes they found CAN bus behavior abnormally and would be in bus-off state automatically. 

  1.  when will the CAN bus be in the  bus off state automatically?

  2. what's the bus off trigger event? like receiving lots of CRC/ACK?

  3. if the bus off state is not required? can we removed this function manually? and how?

  • Hi Steven,

    The CAN bus goes to Bus-off state due to a massive occurrence of CAN bus errors but there is Auto-Bus-On feature which is described in AM335x TRM section 23.3.8.2.2 Auto-Bus-On
    By default, after the DCAN has entered Bus-Off state, the CPU can start a Bus-Off-Recovery sequence by
    resetting the Init bit. If this is not done, the module will stay in Bus-Off state.
    ..........................

    Also check the following register which are related to Bus-Off recovery
    23.4.1.1 CTL Register
    Configure the Bus-Off recovery sequence
    and
    23.4.1.8 ABOTR Register where can be configured Number of OCP clock cycles before a Bus-Off recovery sequence is started by clearing the Init bit.

    BR
    Tsvetolin Shulev