CANBUS bytes_invalid and extruder motor

Basic Information:

Printer Model: Voron 0 (mini afterburner)
MCU / Printerboard: SKR Mini e3 v2
Host / SBC: Raspberry Pi 3B+, Waveshare CAN hat
klippy.log
klippy.log (127.9 KB)

Describe your issue:

Hi everyone, I’m working on diagnosing an issue with my BTT EBB36 CANBUS toolhead board disconnecting after printing for some time. The printer will successfully complete prints of 2-3 hours, but shortly after finishing the connection to the toolhead board will fail and klipper will shut down (the error is “Timeout on wait for ‘tmcuart_response’ response”).
I’ve been through the hardware and software configuration thoroughly and haven’t found the problem yet, but I did notice that the bytes_invalid for the EBB36 will only rise if the extruder motor is active. So I can turn on the heaters and home the printer and it will sit forever with no problem, but if I send an extrude command through the web interface, the bytes_invalid will begin to increase and eventually klipper will shut down. I can reliably reproduce this by restarting klipper and extruding 1mm of filament using Mainsail. After a short time (5-20 minutes), klipper will shut down. Strangely it seems to take longer to shut down if it is printing as I have successfully completed several 2+ hour prints.
Probably next I will try getting a shielded cable and/or trying a new EBB36, but I wanted to see if anyone could diagnose my issue given this information about the extruder motor and bytes_invalid. Thanks for taking the time to read this.

Mmmm, canstat_EBB shows zero errors.
Log seems truncated.
That is a little strange, that there is no debug output for EBB.

Just a wild guess: Maybe there is a similar issue with the GS USB.
Like host interrupts sometimes reorder the can frames.
Then, there is a recommendation to run kernel 6.6+.

Seems similar to the gs_usb:

Probably fixed in 6.0+, according to GitHub.
That implies that you are using the kernel built in support.

Hope that helps.

Hi nefelim4ag, thanks for getting back to me!

It looks like you were right, I updated the linux kernel by running “sudo rpi-update stable” in the terminal. The linux kernel was Linux 5.10.103-v7+, now it is Linux 6.12.20-v7+. I have turned on the heaters and moved the axes and extruder and bytes_invalid is 0 and not increasing, so this looks very promising. I will try some longer prints next.

Thanks again for your assistance!

I’ve got about 12 hours now with no failures, so this solved my problem, thanks again!