What's new
VORON Design

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members!

Logic for heater-based controller_fan activation?


Well-known member
Quick question on the fan logic with a new LDO 2.4r2 build:

There is this section in Klipper's printer.cfg:
## Controller fan - FAN2
[controller_fan controller_fan]
pin: PD12
kick_start_time: 0.5
heater: heater_bed
fan_speed: 0.5

Which based on the Klipper config reference, "will be enabled when any of the given heaters/steppers are enabled", in this case, the heater "heated_bed".

When I power on the machine, these fans are off. However, when homing the machine, the fans will immediately turn on, and will then stay on forever.
But likewise, if I disable the steppers, then right on target 30 seconds later, the controller fans kick off.

So it seems like the controller fan is triggering in response to the steppers somehow - rather than the heated bed as expected.

Any thoughts on why this might be happening?
From the controller fan documentation:

A "controller fan" is a fan that will beenabled whenever its associated heater or its associated stepperdriver is active.

And from the documentation of the motor selection specifically:
the default stepper is all of them.
Ahh, ok, thanks.

So after thinking it through, I presume that the behavior then is as intended - the electronics compartment would be ventilated any time the heated bed OR any steppers are active. It would make sense to do that - and I'll keep that as-is.

Just for reference though, how would one specify "no steppers"? Would you just include the line:
with nothing after? And then the fact that you defined that line ("stepper:") is enough to override the default list?
I must admit, I've never actually tried to omit all. I suspect it's either what you said, or possibly :None
I tried it - fully expecting an error prompt - but it worked!
Just including "stepper:" alone on a line was enough to clear that default list, and then the fan was tied to only the bed heater.
I've since reverted that, but learned something new about Klipper today.