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

Add CONTROLLER_FAN_BED_HEATING option to control to run/not run the controller fan when the bed is heating #27409

Merged
merged 3 commits into from
Oct 4, 2024

Conversation

rondlh
Copy link
Contributor

@rondlh rondlh commented Sep 9, 2024

Description

Add the option to run/not run the controller fan when bed heating is enabled, as this is often not needed.
This is done in Configuration_adv.h, by defining "CONTROLLER_FAN_BED_HEATING", which will run the controller fan when bed heating is enabled (the current default).
When the line is commented out the controller fan will not run anymore when the bed his eating, as this is often not needed, like for example when a main power bed heater is used or the controller fan does not affect the bed heating power supply.

Requirements

This PR does not require any specific boards. Obviously you need a controller fan, and a heated bed for this to be useful.

Benefits

Allow to have the bed heating, without running the controller fan, this will reduce noise, and can be useful when the bed is heating without the steppers being active. In my printer the bed is heated first, which takes some time, then homing starts. The controller fan does not need to run during the bed heating time. I also sometimes have the bed heating for some time without actually printing.

Configurations

Nothing special is needed, just at #define CONTROLLER_FAN_BED_HEATING to the Configuration_adv.h

Related Issues

No related issues.

Add the option to not run the controller fan when bed heating is enabled, as this is often not needed.
@thisiskeithb
Copy link
Member

Add the option to run/not run the controller fan when bed heating is enabled, as this is often not needed.

This is especially necessary for the bed mosfet since that will be the largest mosfet doing the most work.

@rondlh
Copy link
Contributor Author

rondlh commented Sep 9, 2024

Add the option to run/not run the controller fan when bed heating is enabled, as this is often not needed.

This is especially necessary for the bed mosfet since that will be the largest mosfet doing the most work.

Agree, in some cases it's necessary and or useful to run the controller fan when the bed is heating, but in some cases it's not. I have seen several printers where the bed heating has nothing to do with the controller fan, often only the stepper drivers are targeted with the controller fan and even the power supply is not affected or has it's own independent fan.

In my experience mosfet bed driver should not get hot, especially the mains voltage ones. I run my bed at 12A 36V, and my basic MKS mini mos only gets slightly warmer than ambient. If the mosfet gets hot it's usually a sign that something is not configured correctly. If a mosfet is driven correctly then the resistance is only a few mOhms, and Marlin keeps the switching frequency quite low, so also there should not be an issue.

Anyway, the PR gives an option, if you need the controller fan during bed heating, then that's still the default.

@thinkyhead thinkyhead force-pushed the bugfix-2.1.x branch 3 times, most recently from 37d77d6 to aa44542 Compare September 28, 2024 01:10
thinkyhead added a commit to MarlinFirmware/Configurations that referenced this pull request Oct 3, 2024
thinkyhead added a commit to MarlinFirmware/Configurations that referenced this pull request Oct 3, 2024
thinkyhead added a commit to MarlinFirmware/Configurations that referenced this pull request Oct 3, 2024
@thinkyhead
Copy link
Member

If there's some straightforward way to disable this option for the appropriate example configurations we should apply that change across the examples repository after this is merged.

@thinkyhead thinkyhead merged commit 5c3bc21 into MarlinFirmware:bugfix-2.1.x Oct 4, 2024
63 checks passed
@thisiskeithb
Copy link
Member

If there's some straightforward way to disable this option for the appropriate example configurations we should apply that change across the examples repository after this is merged.

You can search for #define TEMP_SENSOR_BED 0 which results in 52 matches. Then you can refine that further by the configs with USE_CONTROLLER_FAN enabled.

Having said that, it'd be best to leave enabled for cases where the config is updated with a new/aftermarket motherboard that has an additional PWM fan connection.

Based on this PR, Marlin will undefine CONTROLLER_FAN_BED_HEATING when !TEMP_SENSOR_BED is true, so that'd be the safer way to handle things.

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

Successfully merging this pull request may close these issues.

3 participants