Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fan: Support multiple printer fans #6341

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

viesturz
Copy link
Contributor

@viesturz viesturz commented Sep 16, 2023

Allows to setup multiple printer fans.

Multi extruder setups can have separate part cooling fan for each extruder. This integrates support for that in core klipper, removing the need for every multi extruder config to override their macros.

But probably more importantly defines an endorsed way how multi fan setups should be controlled by the slicers.

@viesturz
Copy link
Contributor Author

This is another take on #6282.
Also see https://klipper.discourse.group/t/multiple-tools-gcode-standardization-possible/10127 for the broader context.

@viesturz viesturz force-pushed the switchable-fan branch 2 times, most recently from 638711d to 20b350c Compare September 16, 2023 09:50
@viesturz viesturz changed the title fan: Support multiple printer fans multi_fan: Support multiple printer fans Sep 16, 2023
@viesturz viesturz force-pushed the switchable-fan branch 5 times, most recently from f9d395b to 2c347cc Compare September 16, 2023 15:30
@KevinOConnor
Copy link
Collaborator

Thanks. In general it seems fine to me. I'd prefer to see some comments from users of this functionality as well though (I don't own hardware that would utilize this functionality so it is hard for me to judge).

Also, multi_fan seems a little ambiguous to me. Perhaps fan_multiple_toolhead might be more explicit. Similarly, command names should ideally contain the module name in the command name (eg, FAN_MULTIPLE_TOOLHEAD_ACTIVATE).

Finally, what's the pros/cons of adding a new module as opposed to adding support for ACTIVATE_FAN to existing "fan" module?

-Kevin

@viesturz
Copy link
Contributor Author

viesturz commented Oct 1, 2023

Hi, thanks for the feedback.
I actually prefer extending fan. The multi_fan choice was to keep the implementation separate. Will update the PR to fan. I'm not seeing any other cons for using just fan.

One other part that I would like to add is a
Possibility to activate multiple fans - that would allow controlling side mounted additional fans for example. But not sure if the extra complexity is worth it.

@viesturz viesturz changed the title multi_fan: Support multiple printer fans fan: Support multiple printer fans Oct 2, 2023
@viesturz viesturz force-pushed the switchable-fan branch 3 times, most recently from bc6fd09 to 3c4f57a Compare October 2, 2023 19:18
@viesturz
Copy link
Contributor Author

viesturz commented Oct 2, 2023

Changed to use the [fan].

I am toying with the idea of adding ACTIVATE_FAN FAN=fan1,fan2 bit personally do not have a use case for it.

@myxxx323
Copy link

Good afternoon, everything works fine, but only in 2 extruder mode, in copy or mirror mode, the second fan does not work at all

@viesturz
Copy link
Contributor Author

viesturz commented Oct 11, 2023 via email

@myxxx323
Copy link

Your solution is the best that can be found on the Internet, I hope you will be able to make the second fan work

@viesturz
Copy link
Contributor Author

Back from vacation, updated to handle IDEX mirror mode and the like.

@viesturz viesturz force-pushed the switchable-fan branch 2 times, most recently from 3a7e91a to c259fbb Compare October 20, 2023 07:05
Allows to setup multiple printer fans.

Multi extruder setups can have separate part cooling fan for each extruder.
This integrates support for that in core klipper, removing the need for every multi extruder config to override their macros.

But probably more importantly defines an endorsed way how multi fan setups should be controlled by the slicers.

Signed-off-by: Viesturs Zarins <viesturz@gmail.com>
@myxxx323
Copy link

Back from vacation, updated to handle IDEX mirror mode and the like.

Thanks, it works :) Can you tell me where the tool change speed setting is, the heads are changed very slowly

@viesturz
Copy link
Contributor Author

viesturz commented Oct 20, 2023 via email

@myxxx323
Copy link

Thank you, I figured it out, I just added what accelerations were needed to the parking macros

Copy link

github-actions bot commented Nov 4, 2023

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:

  1. 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.
  2. 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.
  3. 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.

@viesturz
Copy link
Contributor Author

viesturz commented Nov 7, 2023

Copy link

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.

@github-actions github-actions bot closed this Nov 22, 2023
@KevinOConnor KevinOConnor reopened this Nov 22, 2023
@klack
Copy link

klack commented Dec 2, 2023

Yes needed for my IDEX that has a 3rd AUX fan for high speed printing (those are thing now).

@myxxx323
Copy link

myxxx323 commented Dec 7, 2023

Starting a discourse thread: https://klipper.discourse.group/t/review-request-support-multiple-part-cooling-fans/11411

Good afternoon, tell me, are there any plans to add these fixes to the Klipper updates? After updating the Klipper, everything is deleted. When changing files, the Klipper becomes dirty.

@eldeesmith
Copy link

interesting how IDEX support was added without the ability to add a second parts cooling fan. are IDEX people just using multipin and having the parked head blow the cooling fan in tandem with the active head? definitely need multiple fan support in klipper

@brotherdust
Copy link
Contributor

I need this for my IDEX printer as well. Please merge.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants