AM625: Can overrun issue

Part Number: AM625
Other Parts Discussed in Thread: SK-AM62-LP

Tool/software:

Hi Expert,

We used SK-AM62-LP for CAN communication verification (standard frame, 1Mbps). The verification method was to continuously send message using another board .

In the initial SDK9 version, both the main can and the MCU can would occasionally have overrun errors.

Later, following FAE's advice, I switched to the latest SDK11.01.05.03 (not RT-Linux), and the overrun error no longer occurs. However, if you plug or unplug the network cable or start our application at this time, the overrun error will still occur.

main can test:

mcu can test:

When changing RT-Linux, overrun will also appear when plugging or unplugging the network cable.

We analyzed that the cause of the overrun error is that the kernel failed to remove the data in the fifo of the CAN drive in time. Is that so? Is there any way to solve it?

  • Let me add some of the methods we have tried
    1. Increased the cache, but it had no effect;

    sudo sysctl -w net.core.rmem_default=1048576

    sudo sysctl -w net.core.rmem_max=4194304

    2.Changing the polling interval of the mcu can from 1ms to 0.1ms has improved but still cannot be completely solved.