Klipper3d / klipper

Klipper is a 3d-printer firmware
GNU General Public License v3.0
9k stars 5.18k forks source link

fan: Support multiple printer fans #6341

Open viesturz opened 9 months ago

viesturz commented 9 months ago

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 commented 9 months ago

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

KevinOConnor commented 9 months ago

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 commented 9 months ago

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 commented 9 months ago

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 commented 8 months ago

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 commented 8 months ago

Good point, let me fix that.

On Wed, Oct 11, 2023, 13:05 myxxx323 @.***> wrote:

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

— Reply to this email directly, view it on GitHub https://github.com/Klipper3d/klipper/pull/6341#issuecomment-1757435498, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMQT4ZJVWV4EAPXSBTQZILX6Z4P7ANCNFSM6AAAAAA42WXO4M . You are receiving this because you authored the thread.Message ID: @.***>

myxxx323 commented 8 months ago

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 commented 8 months ago

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

myxxx323 commented 8 months ago

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 commented 8 months ago

Hmm, not sure what you are referring to. The index example config? Something else?

In general the speed is controlled by Fxxx parameter in G0/G1 commands. Falling back previously used values when absent.

Perhaps discord is a better place troubleshoot your particular config?

On Fri, Oct 20, 2023, 10:41 myxxx323 @.***> wrote:

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

— Reply to this email directly, view it on GitHub https://github.com/Klipper3d/klipper/pull/6341#issuecomment-1772322856, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMQT4YZTYRKWKJH42S4W2LYAI2MHAVCNFSM6AAAAAA42WXO4OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZSGMZDEOBVGY . You are receiving this because you authored the thread.Message ID: @.***>

myxxx323 commented 8 months ago

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

github-actions[bot] commented 8 months ago

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 commented 7 months ago

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

github-actions[bot] commented 7 months ago

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.

klack commented 7 months ago

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

myxxx323 commented 6 months ago

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 commented 6 months ago

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 commented 4 months ago

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