klipper
klipper copied to clipboard
controller_fan: Add min_speed configuration
Adds a min_speed configuration value that allows the user to override the minimum speed. The min_speed value is used on startup and after the idle_speed timeout.
This allows a single fan in a combined electronics enclosure to always run at a defined speed to keep air flowing even when the configured steppers and heaters are not active.
Signed-off-by: Charles Willis ([email protected])
If the change is acceptable I can push another commit with the updated docs.
I can confirm that this works as intended. One thing worth noting is that if min_speed
is set to a value lower than off_below
, the fan will be off. This is good from overall logic perspective but could potentially be confusing for some users. In other words, it might be useful to state in the documentation that min_speed
, when set, has to be no lower than off_below
.
FWIW I personally think this is a very useful change for the exact reason you stated.
EDIT: Ref. PR #4810 that has been withdrawn.
Does it make more sense for min_speed deafult and/or min value to be set to off_below?
Also, no notes or discord discussion I could find on why PR 4810 was withdrawn. It's exactly the same as this change.
Also, I run this change on my own SKR Pico and it works as expected (and solves my Raspberry PI 3 overheating issue :-) ).
Does it make more sense for min_speed deafult and/or min value to be set to off_below?
You will have to wait for Kevin or an official reviewer to comment.
Also, no notes or discord discussion I could find on why PR 4810 was withdrawn. It's exactly the same as this change.
I am not sure, the author just suddenly withdrew it...
Does it make more sense for min_speed deafult and/or min value to be set to off_below?
You will have to wait for Kevin or an official reviewer to comment.
Giving this some additional thought, I think @ReXT3D original suggestion to include a note in the documentation makes more sense than tying min_speed to off_below. For controller_fan, the default behavior is meant to be turning the fan off, so a default of 0. makes the most sense.
Thank you for your contribution to Klipper. Unfortunately, a reviewer has not assigned themselves to this GitHub Pull Request. All Pull Requests are reviewed before merging, and a reviewer will need to volunteer. Further information is available at: https://www.klipper3d.org/CONTRIBUTING.html
There are some steps that you can take now:
- Perform a self-review of your Pull Request by following the steps at: https://www.klipper3d.org/CONTRIBUTING.html#what-to-expect-in-a-review If you have completed a self-review, be sure to state the results of that self-review explicitly in the Pull Request comments. A reviewer is more likely to participate if the bulk of a review has already been completed.
- Consider opening a topic on the Klipper Discourse server to discuss this work. The Discourse server is a good place to discuss development ideas and to engage users interested in testing. Reviewers are more likely to prioritize Pull Requests with an active community of users.
- Consider helping out reviewers by reviewing other Klipper Pull Requests. Taking the time to perform a careful and detailed review of others work is appreciated. Regular contributors are more likely to prioritize the contributions of other regular contributors.
Unfortunately, if a reviewer does not assign themselves to this GitHub Pull Request then it will be automatically closed. If this happens, then it is a good idea to move further discussion to the Klipper Discourse server. Reviewers can reach out on that forum to let you know if they are interested and when they are available.
Best regards, ~ Your friendly GitIssueBot
PS: I'm just an automated script, not a human being.
Thanks. However, it is not clear to me that there are a sufficient number of users that want to always run a fan even if the printer is idle. I'm leery of adding additional config complexity.
Separately, I have a rough plan to add support for "fan speed templates" so that one can specify an arbitrary formula to set the fan speed to (similar to how one can specify "led templates" today).
-Kevin
Unfortunately a reviewer has not assigned themselves to this GitHub Pull Request and it is therefore being closed. It is a good idea to move further discussion to the Klipper Discourse server. Reviewers can reach out on that forum to let you know if they are interested and when they are available.
Best regards, ~ Your friendly GitIssueBot
PS: I'm just an automated script, not a human being.