From 48b7a1e66e9aa96ce2c915843df0ba9e824f783c Mon Sep 17 00:00:00 2001 From: LinFor Date: Mon, 11 Nov 2019 01:33:56 +0300 Subject: [PATCH] Allow non-zero "fan off" PWM value (#15709) --- Marlin/Configuration_adv.h | 3 +++ Marlin/src/inc/Conditionals_post.h | 11 ++++++++++- Marlin/src/module/planner.cpp | 4 ++-- config/default/Configuration_adv.h | 3 +++ config/examples/3DFabXYZ/Migbot/Configuration_adv.h | 3 +++ config/examples/ADIMLab/Gantry v1/Configuration_adv.h | 3 +++ config/examples/ADIMLab/Gantry v2/Configuration_adv.h | 3 +++ config/examples/AlephObjects/TAZ4/Configuration_adv.h | 3 +++ .../examples/Alfawise/U20-bltouch/Configuration_adv.h | 3 +++ config/examples/Alfawise/U20/Configuration_adv.h | 3 +++ .../examples/AliExpress/UM2pExt/Configuration_adv.h | 3 +++ config/examples/Anet/A2/Configuration_adv.h | 3 +++ config/examples/Anet/A2plus/Configuration_adv.h | 3 +++ config/examples/Anet/A6/Configuration_adv.h | 3 +++ config/examples/Anet/A8/Configuration_adv.h | 3 +++ config/examples/Anet/A8plus/Configuration_adv.h | 3 +++ config/examples/Anet/E16/Configuration_adv.h | 3 +++ config/examples/AnyCubic/i3/Configuration_adv.h | 3 +++ config/examples/ArmEd/Configuration_adv.h | 3 +++ .../examples/BIBO/TouchX/cyclops/Configuration_adv.h | 3 +++ .../examples/BIBO/TouchX/default/Configuration_adv.h | 3 +++ config/examples/BQ/Hephestos/Configuration_adv.h | 3 +++ config/examples/BQ/Hephestos_2/Configuration_adv.h | 3 +++ config/examples/BQ/WITBOX/Configuration_adv.h | 3 +++ config/examples/Cartesio/Configuration_adv.h | 3 +++ config/examples/Creality/CR-10/Configuration_adv.h | 3 +++ config/examples/Creality/CR-10S/Configuration_adv.h | 3 +++ config/examples/Creality/CR-10_5S/Configuration_adv.h | 3 +++ .../examples/Creality/CR-10mini/Configuration_adv.h | 3 +++ .../examples/Creality/CR-20 Pro/Configuration_adv.h | 3 +++ config/examples/Creality/CR-20/Configuration_adv.h | 3 +++ config/examples/Creality/CR-8/Configuration_adv.h | 3 +++ config/examples/Creality/Ender-2/Configuration_adv.h | 3 +++ config/examples/Creality/Ender-3/Configuration_adv.h | 3 +++ config/examples/Creality/Ender-4/Configuration_adv.h | 3 +++ config/examples/Creality/Ender-5/Configuration_adv.h | 3 +++ .../Dagoma/Disco Ultimate/Configuration_adv.h | 3 +++ .../Sidewinder X1/Configuration_adv.h | 3 +++ config/examples/Einstart-S/Configuration_adv.h | 3 +++ config/examples/FYSETC/AIO_II/Configuration_adv.h | 3 +++ .../FYSETC/Cheetah 1.2/BLTouch/Configuration_adv.h | 3 +++ .../FYSETC/Cheetah 1.2/base/Configuration_adv.h | 3 +++ .../FYSETC/Cheetah/BLTouch/Configuration_adv.h | 3 +++ .../examples/FYSETC/Cheetah/base/Configuration_adv.h | 3 +++ config/examples/FYSETC/F6_13/Configuration_adv.h | 3 +++ config/examples/Felix/DUAL/Configuration_adv.h | 3 +++ config/examples/Felix/Single/Configuration_adv.h | 3 +++ .../FlashForge/CreatorPro/Configuration_adv.h | 3 +++ .../examples/FolgerTech/i3-2020/Configuration_adv.h | 3 +++ config/examples/Formbot/Raptor/Configuration_adv.h | 3 +++ config/examples/Formbot/T_Rex_2+/Configuration_adv.h | 3 +++ config/examples/Formbot/T_Rex_3/Configuration_adv.h | 3 +++ config/examples/Geeetech/A10/Configuration_adv.h | 3 +++ config/examples/Geeetech/A10M/Configuration_adv.h | 3 +++ config/examples/Geeetech/A20M/Configuration_adv.h | 3 +++ .../examples/Geeetech/MeCreator2/Configuration_adv.h | 3 +++ .../Geeetech/Prusa i3 Pro C/Configuration_adv.h | 3 +++ .../Geeetech/Prusa i3 Pro W/Configuration_adv.h | 3 +++ config/examples/HMS434/Configuration_adv.h | 3 +++ config/examples/Infitary/i3-M508/Configuration_adv.h | 3 +++ config/examples/JGAurora/A1/Configuration_adv.h | 3 +++ config/examples/JGAurora/A5/Configuration_adv.h | 3 +++ config/examples/JGAurora/A5S/Configuration_adv.h | 3 +++ .../delta/Anycubic/Kossel/Configuration_adv.h | 3 +++ .../delta/Dreammaker/Overlord/Configuration_adv.h | 3 +++ .../delta/Dreammaker/Overlord_Pro/Configuration_adv.h | 3 +++ .../delta/FLSUN/auto_calibrate/Configuration_adv.h | 3 +++ .../examples/delta/FLSUN/kossel/Configuration_adv.h | 3 +++ .../delta/FLSUN/kossel_mini/Configuration_adv.h | 3 +++ .../delta/Geeetech/Rostock 301/Configuration_adv.h | 3 +++ config/examples/delta/MKS/SBASE/Configuration_adv.h | 3 +++ .../delta/Tevo Little Monster/Configuration_adv.h | 3 +++ config/examples/delta/generic/Configuration_adv.h | 3 +++ config/examples/delta/kossel_mini/Configuration_adv.h | 3 +++ config/examples/delta/kossel_xl/Configuration_adv.h | 3 +++ config/examples/gCreate/gMax1.5+/Configuration_adv.h | 3 +++ 76 files changed, 234 insertions(+), 3 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index f51231543e2..4c6bd43c6c6 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index cfe67e785a1..7510e22d5b4 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1302,8 +1302,15 @@ /** * MIN/MAX fan PWM scaling */ +#ifndef FAN_OFF_PWM + #define FAN_OFF_PWM 0 +#endif #ifndef FAN_MIN_PWM - #define FAN_MIN_PWM 0 + #if FAN_OFF_PWM > 0 + #define FAN_MIN_PWM (FAN_OFF_PWM + 1) + #else + #define FAN_MIN_PWM 0 + #endif #endif #ifndef FAN_MAX_PWM #define FAN_MAX_PWM 255 @@ -1314,6 +1321,8 @@ #error "FAN_MAX_PWM must be a value from 0 to 255." #elif FAN_MIN_PWM > FAN_MAX_PWM #error "FAN_MIN_PWM must be less than or equal to FAN_MAX_PWM." +#elif FAN_OFF_PWM > FAN_MIN_PWM + #error "FAN_OFF_PWM must be less than or equal to FAN_MIN_PWM." #endif /** diff --git a/Marlin/src/module/planner.cpp b/Marlin/src/module/planner.cpp index 99b944ae124..8b38cef4996 100644 --- a/Marlin/src/module/planner.cpp +++ b/Marlin/src/module/planner.cpp @@ -1285,9 +1285,9 @@ void Planner::check_axes_activity() { #endif #if FAN_MIN_PWM != 0 || FAN_MAX_PWM != 255 - #define CALC_FAN_SPEED(f) (tail_fan_speed[f] ? map(tail_fan_speed[f], 1, 255, FAN_MIN_PWM, FAN_MAX_PWM) : 0) + #define CALC_FAN_SPEED(f) (tail_fan_speed[f] ? map(tail_fan_speed[f], 1, 255, FAN_MIN_PWM, FAN_MAX_PWM) : FAN_OFF_PWM) #else - #define CALC_FAN_SPEED(f) tail_fan_speed[f] + #define CALC_FAN_SPEED(f) (tail_fan_speed[f] ?: FAN_OFF_PWM) #endif #if ENABLED(FAN_SOFT_PWM) diff --git a/config/default/Configuration_adv.h b/config/default/Configuration_adv.h index f51231543e2..4c6bd43c6c6 100644 --- a/config/default/Configuration_adv.h +++ b/config/default/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/3DFabXYZ/Migbot/Configuration_adv.h b/config/examples/3DFabXYZ/Migbot/Configuration_adv.h index 587e589227f..c74188fa968 100644 --- a/config/examples/3DFabXYZ/Migbot/Configuration_adv.h +++ b/config/examples/3DFabXYZ/Migbot/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/ADIMLab/Gantry v1/Configuration_adv.h b/config/examples/ADIMLab/Gantry v1/Configuration_adv.h index d4b2f5ba28f..aaa81563b53 100644 --- a/config/examples/ADIMLab/Gantry v1/Configuration_adv.h +++ b/config/examples/ADIMLab/Gantry v1/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/ADIMLab/Gantry v2/Configuration_adv.h b/config/examples/ADIMLab/Gantry v2/Configuration_adv.h index 82fc8b9452b..409f1e9edda 100644 --- a/config/examples/ADIMLab/Gantry v2/Configuration_adv.h +++ b/config/examples/ADIMLab/Gantry v2/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/AlephObjects/TAZ4/Configuration_adv.h b/config/examples/AlephObjects/TAZ4/Configuration_adv.h index 291fa6a8840..70df9b79872 100644 --- a/config/examples/AlephObjects/TAZ4/Configuration_adv.h +++ b/config/examples/AlephObjects/TAZ4/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Alfawise/U20-bltouch/Configuration_adv.h b/config/examples/Alfawise/U20-bltouch/Configuration_adv.h index 6495e8e087e..9366d61b523 100644 --- a/config/examples/Alfawise/U20-bltouch/Configuration_adv.h +++ b/config/examples/Alfawise/U20-bltouch/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Alfawise/U20/Configuration_adv.h b/config/examples/Alfawise/U20/Configuration_adv.h index 250f050b88a..366096e6540 100644 --- a/config/examples/Alfawise/U20/Configuration_adv.h +++ b/config/examples/Alfawise/U20/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/AliExpress/UM2pExt/Configuration_adv.h b/config/examples/AliExpress/UM2pExt/Configuration_adv.h index e235b2340c2..e51b3ae975b 100644 --- a/config/examples/AliExpress/UM2pExt/Configuration_adv.h +++ b/config/examples/AliExpress/UM2pExt/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Anet/A2/Configuration_adv.h b/config/examples/Anet/A2/Configuration_adv.h index d9a49006b70..8e105f391f3 100644 --- a/config/examples/Anet/A2/Configuration_adv.h +++ b/config/examples/Anet/A2/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Anet/A2plus/Configuration_adv.h b/config/examples/Anet/A2plus/Configuration_adv.h index d9a49006b70..8e105f391f3 100644 --- a/config/examples/Anet/A2plus/Configuration_adv.h +++ b/config/examples/Anet/A2plus/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Anet/A6/Configuration_adv.h b/config/examples/Anet/A6/Configuration_adv.h index 0def5901436..52edea20cf0 100644 --- a/config/examples/Anet/A6/Configuration_adv.h +++ b/config/examples/Anet/A6/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Anet/A8/Configuration_adv.h b/config/examples/Anet/A8/Configuration_adv.h index 788f1e1842a..c62f0d693bd 100644 --- a/config/examples/Anet/A8/Configuration_adv.h +++ b/config/examples/Anet/A8/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Anet/A8plus/Configuration_adv.h b/config/examples/Anet/A8plus/Configuration_adv.h index 4fcb487fa14..9e5d71de3f4 100644 --- a/config/examples/Anet/A8plus/Configuration_adv.h +++ b/config/examples/Anet/A8plus/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Anet/E16/Configuration_adv.h b/config/examples/Anet/E16/Configuration_adv.h index c79847e85e1..f9c8e051a49 100644 --- a/config/examples/Anet/E16/Configuration_adv.h +++ b/config/examples/Anet/E16/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/AnyCubic/i3/Configuration_adv.h b/config/examples/AnyCubic/i3/Configuration_adv.h index 37ced96df2c..5b11b205e79 100644 --- a/config/examples/AnyCubic/i3/Configuration_adv.h +++ b/config/examples/AnyCubic/i3/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/ArmEd/Configuration_adv.h b/config/examples/ArmEd/Configuration_adv.h index 450e5095463..a357117a1a2 100644 --- a/config/examples/ArmEd/Configuration_adv.h +++ b/config/examples/ArmEd/Configuration_adv.h @@ -294,6 +294,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h b/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h index 25db086713d..bfd125b30ba 100644 --- a/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h +++ b/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/BIBO/TouchX/default/Configuration_adv.h b/config/examples/BIBO/TouchX/default/Configuration_adv.h index 899d91e82ae..dc7066b027d 100644 --- a/config/examples/BIBO/TouchX/default/Configuration_adv.h +++ b/config/examples/BIBO/TouchX/default/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/BQ/Hephestos/Configuration_adv.h b/config/examples/BQ/Hephestos/Configuration_adv.h index 8f68318c141..1e3ea58cd76 100644 --- a/config/examples/BQ/Hephestos/Configuration_adv.h +++ b/config/examples/BQ/Hephestos/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/BQ/Hephestos_2/Configuration_adv.h b/config/examples/BQ/Hephestos_2/Configuration_adv.h index 4eccb1707de..c19294fd577 100644 --- a/config/examples/BQ/Hephestos_2/Configuration_adv.h +++ b/config/examples/BQ/Hephestos_2/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 800 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/BQ/WITBOX/Configuration_adv.h b/config/examples/BQ/WITBOX/Configuration_adv.h index 8f68318c141..1e3ea58cd76 100644 --- a/config/examples/BQ/WITBOX/Configuration_adv.h +++ b/config/examples/BQ/WITBOX/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Cartesio/Configuration_adv.h b/config/examples/Cartesio/Configuration_adv.h index 2f7106f8315..c6552f806c1 100644 --- a/config/examples/Cartesio/Configuration_adv.h +++ b/config/examples/Cartesio/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/CR-10/Configuration_adv.h b/config/examples/Creality/CR-10/Configuration_adv.h index a02aaf7fb2d..9374feaf5b6 100644 --- a/config/examples/Creality/CR-10/Configuration_adv.h +++ b/config/examples/Creality/CR-10/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/CR-10S/Configuration_adv.h b/config/examples/Creality/CR-10S/Configuration_adv.h index c4eb137dea1..4cfaadd9767 100644 --- a/config/examples/Creality/CR-10S/Configuration_adv.h +++ b/config/examples/Creality/CR-10S/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/CR-10_5S/Configuration_adv.h b/config/examples/Creality/CR-10_5S/Configuration_adv.h index d8321d6d4d7..d6a5f6be45c 100644 --- a/config/examples/Creality/CR-10_5S/Configuration_adv.h +++ b/config/examples/Creality/CR-10_5S/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/CR-10mini/Configuration_adv.h b/config/examples/Creality/CR-10mini/Configuration_adv.h index 737f8759c8f..151961a014a 100644 --- a/config/examples/Creality/CR-10mini/Configuration_adv.h +++ b/config/examples/Creality/CR-10mini/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/CR-20 Pro/Configuration_adv.h b/config/examples/Creality/CR-20 Pro/Configuration_adv.h index 664b27aff39..23a9a3abf90 100644 --- a/config/examples/Creality/CR-20 Pro/Configuration_adv.h +++ b/config/examples/Creality/CR-20 Pro/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/CR-20/Configuration_adv.h b/config/examples/Creality/CR-20/Configuration_adv.h index 3d5bd1537d2..58f9c4f5a6c 100644 --- a/config/examples/Creality/CR-20/Configuration_adv.h +++ b/config/examples/Creality/CR-20/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/CR-8/Configuration_adv.h b/config/examples/Creality/CR-8/Configuration_adv.h index 7ac86c8402a..dee2a4666e5 100644 --- a/config/examples/Creality/CR-8/Configuration_adv.h +++ b/config/examples/Creality/CR-8/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/Ender-2/Configuration_adv.h b/config/examples/Creality/Ender-2/Configuration_adv.h index 5e5fef850cc..ea84f793ac3 100644 --- a/config/examples/Creality/Ender-2/Configuration_adv.h +++ b/config/examples/Creality/Ender-2/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/Ender-3/Configuration_adv.h b/config/examples/Creality/Ender-3/Configuration_adv.h index e7645558f8a..c75bb308e7b 100644 --- a/config/examples/Creality/Ender-3/Configuration_adv.h +++ b/config/examples/Creality/Ender-3/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/Ender-4/Configuration_adv.h b/config/examples/Creality/Ender-4/Configuration_adv.h index 769bce36f38..612824e5656 100644 --- a/config/examples/Creality/Ender-4/Configuration_adv.h +++ b/config/examples/Creality/Ender-4/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Creality/Ender-5/Configuration_adv.h b/config/examples/Creality/Ender-5/Configuration_adv.h index a81b90feae1..63262fa737b 100644 --- a/config/examples/Creality/Ender-5/Configuration_adv.h +++ b/config/examples/Creality/Ender-5/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Dagoma/Disco Ultimate/Configuration_adv.h b/config/examples/Dagoma/Disco Ultimate/Configuration_adv.h index 626598926d7..e114082fef1 100644 --- a/config/examples/Dagoma/Disco Ultimate/Configuration_adv.h +++ b/config/examples/Dagoma/Disco Ultimate/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration_adv.h b/config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration_adv.h index 044ea945372..f362a4d848c 100755 --- a/config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration_adv.h +++ b/config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Einstart-S/Configuration_adv.h b/config/examples/Einstart-S/Configuration_adv.h index 48b07bdb905..a231f39f033 100644 --- a/config/examples/Einstart-S/Configuration_adv.h +++ b/config/examples/Einstart-S/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FYSETC/AIO_II/Configuration_adv.h b/config/examples/FYSETC/AIO_II/Configuration_adv.h index e61afcae24d..6ede1567b8a 100644 --- a/config/examples/FYSETC/AIO_II/Configuration_adv.h +++ b/config/examples/FYSETC/AIO_II/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FYSETC/Cheetah 1.2/BLTouch/Configuration_adv.h b/config/examples/FYSETC/Cheetah 1.2/BLTouch/Configuration_adv.h index e453aed1bde..463102601e4 100644 --- a/config/examples/FYSETC/Cheetah 1.2/BLTouch/Configuration_adv.h +++ b/config/examples/FYSETC/Cheetah 1.2/BLTouch/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FYSETC/Cheetah 1.2/base/Configuration_adv.h b/config/examples/FYSETC/Cheetah 1.2/base/Configuration_adv.h index e453aed1bde..463102601e4 100644 --- a/config/examples/FYSETC/Cheetah 1.2/base/Configuration_adv.h +++ b/config/examples/FYSETC/Cheetah 1.2/base/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FYSETC/Cheetah/BLTouch/Configuration_adv.h b/config/examples/FYSETC/Cheetah/BLTouch/Configuration_adv.h index e453aed1bde..463102601e4 100644 --- a/config/examples/FYSETC/Cheetah/BLTouch/Configuration_adv.h +++ b/config/examples/FYSETC/Cheetah/BLTouch/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FYSETC/Cheetah/base/Configuration_adv.h b/config/examples/FYSETC/Cheetah/base/Configuration_adv.h index e453aed1bde..463102601e4 100644 --- a/config/examples/FYSETC/Cheetah/base/Configuration_adv.h +++ b/config/examples/FYSETC/Cheetah/base/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FYSETC/F6_13/Configuration_adv.h b/config/examples/FYSETC/F6_13/Configuration_adv.h index 5b5be57dea5..83c66871dc0 100644 --- a/config/examples/FYSETC/F6_13/Configuration_adv.h +++ b/config/examples/FYSETC/F6_13/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Felix/DUAL/Configuration_adv.h b/config/examples/Felix/DUAL/Configuration_adv.h index 6c13fb00f60..bd41f244c0a 100644 --- a/config/examples/Felix/DUAL/Configuration_adv.h +++ b/config/examples/Felix/DUAL/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Felix/Single/Configuration_adv.h b/config/examples/Felix/Single/Configuration_adv.h index 6c13fb00f60..bd41f244c0a 100644 --- a/config/examples/Felix/Single/Configuration_adv.h +++ b/config/examples/Felix/Single/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FlashForge/CreatorPro/Configuration_adv.h b/config/examples/FlashForge/CreatorPro/Configuration_adv.h index 018cf6132a2..ae6ff30d779 100644 --- a/config/examples/FlashForge/CreatorPro/Configuration_adv.h +++ b/config/examples/FlashForge/CreatorPro/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/FolgerTech/i3-2020/Configuration_adv.h b/config/examples/FolgerTech/i3-2020/Configuration_adv.h index 81637740528..80360f3b7fd 100644 --- a/config/examples/FolgerTech/i3-2020/Configuration_adv.h +++ b/config/examples/FolgerTech/i3-2020/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Formbot/Raptor/Configuration_adv.h b/config/examples/Formbot/Raptor/Configuration_adv.h index 9ace858c65a..7dff6dacdc1 100644 --- a/config/examples/Formbot/Raptor/Configuration_adv.h +++ b/config/examples/Formbot/Raptor/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Formbot/T_Rex_2+/Configuration_adv.h b/config/examples/Formbot/T_Rex_2+/Configuration_adv.h index c7afdd1a1d6..6bf748dbd81 100644 --- a/config/examples/Formbot/T_Rex_2+/Configuration_adv.h +++ b/config/examples/Formbot/T_Rex_2+/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Formbot/T_Rex_3/Configuration_adv.h b/config/examples/Formbot/T_Rex_3/Configuration_adv.h index 9938e9e16d5..a5214c7cb80 100644 --- a/config/examples/Formbot/T_Rex_3/Configuration_adv.h +++ b/config/examples/Formbot/T_Rex_3/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Geeetech/A10/Configuration_adv.h b/config/examples/Geeetech/A10/Configuration_adv.h index ee0c82efe03..91acd6236eb 100644 --- a/config/examples/Geeetech/A10/Configuration_adv.h +++ b/config/examples/Geeetech/A10/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Geeetech/A10M/Configuration_adv.h b/config/examples/Geeetech/A10M/Configuration_adv.h index af0aa420cef..ddae757dd98 100644 --- a/config/examples/Geeetech/A10M/Configuration_adv.h +++ b/config/examples/Geeetech/A10M/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Geeetech/A20M/Configuration_adv.h b/config/examples/Geeetech/A20M/Configuration_adv.h index 1cbf173d121..04f77c16f7f 100644 --- a/config/examples/Geeetech/A20M/Configuration_adv.h +++ b/config/examples/Geeetech/A20M/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Geeetech/MeCreator2/Configuration_adv.h b/config/examples/Geeetech/MeCreator2/Configuration_adv.h index e3cae5932c6..0937a67b651 100644 --- a/config/examples/Geeetech/MeCreator2/Configuration_adv.h +++ b/config/examples/Geeetech/MeCreator2/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h b/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h index ee0c82efe03..91acd6236eb 100644 --- a/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h +++ b/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h b/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h index ee0c82efe03..91acd6236eb 100644 --- a/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h +++ b/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/HMS434/Configuration_adv.h b/config/examples/HMS434/Configuration_adv.h index 99daf6b1ebc..478f44053c8 100644 --- a/config/examples/HMS434/Configuration_adv.h +++ b/config/examples/HMS434/Configuration_adv.h @@ -289,6 +289,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/Infitary/i3-M508/Configuration_adv.h b/config/examples/Infitary/i3-M508/Configuration_adv.h index 419a0bfd369..2fdb124db6a 100644 --- a/config/examples/Infitary/i3-M508/Configuration_adv.h +++ b/config/examples/Infitary/i3-M508/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/JGAurora/A1/Configuration_adv.h b/config/examples/JGAurora/A1/Configuration_adv.h index 24b356729bf..44c0256d68b 100644 --- a/config/examples/JGAurora/A1/Configuration_adv.h +++ b/config/examples/JGAurora/A1/Configuration_adv.h @@ -295,6 +295,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/JGAurora/A5/Configuration_adv.h b/config/examples/JGAurora/A5/Configuration_adv.h index 1667f5ae24a..ef2a93c3db7 100644 --- a/config/examples/JGAurora/A5/Configuration_adv.h +++ b/config/examples/JGAurora/A5/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/JGAurora/A5S/Configuration_adv.h b/config/examples/JGAurora/A5S/Configuration_adv.h index 24b356729bf..44c0256d68b 100644 --- a/config/examples/JGAurora/A5S/Configuration_adv.h +++ b/config/examples/JGAurora/A5S/Configuration_adv.h @@ -295,6 +295,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/Anycubic/Kossel/Configuration_adv.h b/config/examples/delta/Anycubic/Kossel/Configuration_adv.h index f6982459379..b78f00497a2 100644 --- a/config/examples/delta/Anycubic/Kossel/Configuration_adv.h +++ b/config/examples/delta/Anycubic/Kossel/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/Dreammaker/Overlord/Configuration_adv.h b/config/examples/delta/Dreammaker/Overlord/Configuration_adv.h index 916860689f7..eb800dfc9ad 100644 --- a/config/examples/delta/Dreammaker/Overlord/Configuration_adv.h +++ b/config/examples/delta/Dreammaker/Overlord/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/Dreammaker/Overlord_Pro/Configuration_adv.h b/config/examples/delta/Dreammaker/Overlord_Pro/Configuration_adv.h index a113b8b3816..a1ba9b09963 100644 --- a/config/examples/delta/Dreammaker/Overlord_Pro/Configuration_adv.h +++ b/config/examples/delta/Dreammaker/Overlord_Pro/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) #define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h b/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h index 582c3290e3f..3e7f6ad6d15 100644 --- a/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h +++ b/config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/FLSUN/kossel/Configuration_adv.h b/config/examples/delta/FLSUN/kossel/Configuration_adv.h index 582c3290e3f..3e7f6ad6d15 100644 --- a/config/examples/delta/FLSUN/kossel/Configuration_adv.h +++ b/config/examples/delta/FLSUN/kossel/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h b/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h index 281946d988b..34ca4bf40c6 100644 --- a/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h +++ b/config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/Geeetech/Rostock 301/Configuration_adv.h b/config/examples/delta/Geeetech/Rostock 301/Configuration_adv.h index 71002d227ce..5b29f27d876 100644 --- a/config/examples/delta/Geeetech/Rostock 301/Configuration_adv.h +++ b/config/examples/delta/Geeetech/Rostock 301/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/MKS/SBASE/Configuration_adv.h b/config/examples/delta/MKS/SBASE/Configuration_adv.h index 40ae29fe4fd..76fcf9e59c6 100644 --- a/config/examples/delta/MKS/SBASE/Configuration_adv.h +++ b/config/examples/delta/MKS/SBASE/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/Tevo Little Monster/Configuration_adv.h b/config/examples/delta/Tevo Little Monster/Configuration_adv.h index ba12ad6d2c4..7c6ac8e93c3 100644 --- a/config/examples/delta/Tevo Little Monster/Configuration_adv.h +++ b/config/examples/delta/Tevo Little Monster/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/generic/Configuration_adv.h b/config/examples/delta/generic/Configuration_adv.h index 281946d988b..34ca4bf40c6 100644 --- a/config/examples/delta/generic/Configuration_adv.h +++ b/config/examples/delta/generic/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/kossel_mini/Configuration_adv.h b/config/examples/delta/kossel_mini/Configuration_adv.h index 281946d988b..34ca4bf40c6 100644 --- a/config/examples/delta/kossel_mini/Configuration_adv.h +++ b/config/examples/delta/kossel_mini/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/delta/kossel_xl/Configuration_adv.h b/config/examples/delta/kossel_xl/Configuration_adv.h index f12829dd43e..a71dadd78cf 100644 --- a/config/examples/delta/kossel_xl/Configuration_adv.h +++ b/config/examples/delta/kossel_xl/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling * diff --git a/config/examples/gCreate/gMax1.5+/Configuration_adv.h b/config/examples/gCreate/gMax1.5+/Configuration_adv.h index def7036222d..54d85d8d89a 100644 --- a/config/examples/gCreate/gMax1.5+/Configuration_adv.h +++ b/config/examples/gCreate/gMax1.5+/Configuration_adv.h @@ -290,6 +290,9 @@ // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Some coolers may require a non-zero "off" state. +//#define FAN_OFF_PWM 1 + /** * PWM Fan Scaling *