#Sporadic MCU 'host': Rescheduled timer in the past

7 messages · Page 1 of 1 (latest)

cold plank
#

Hey all. I'm a bit lost as I get random print failures due to a rescheduled timer in the past. While this generally indicates an overloaded mcu, this is for the host MCU. It appears to be related to the BME280 that is attached over i2c to the host, but it is entirely random. Wires appear to be fine, so any help or indicator or even a way of reproducing this failure without ruining a print might be helpful. It is completely sporadic, sometimes after a few hours on idle, sometimes just during a print.

Host MCU is configured to provide chamber temp via BME280, as well as thermal zones over sysfs for CPU and GPU on the rk3399. SBC is a Rock 4C+.

I've attached one of the logs where it happened.

cold plank
#

Okay, it's apparently not caused by the BME280. Swapping that with a new one causes the same issue after a few hours of idle (without heating the new BME280 once, so it's not the reason)

cold plank
#

Just got one again. I'm still surprised by the failure of the host MCU, but I just noticed that something might be off with the can bus, given the retransmits at the point of failure

#

since the initial post I moved the BME280 from being read by klipper to being read by the IIO kernel module

cold plank
#

I'm starting to assume that it stems from the CAN bus but the error remains confusing

cold plank
#
Stats 95869.8
 mcu:
mcu_awake=0.035
bytes_read=2489727
bytes_retransmit=58
bytes_invalid=10
 host:
mcu_awake=0.000
bytes_read=102407
bytes_retransmit=0
bytes_invalid=0
 EBBCan:
mcu_awake=0.063
bytes_read=3879317
bytes_retransmit=0
bytes_invalid=13
 BatMMU:
mcu_awake=0.006
bytes_read=689083
bytes_retransmit=13585
bytes_invalid=34

Yeah, that looks like a CAN problem

twilit cairn
#

Did you fix this in the end? If so, what did you do?
I’m having something similar happen to my printer and am stumped.