Skip to content

Commit 88a6e5b

Browse files
authored
🩺 Assert FAN_SOFT_PWM where required (#23383)
1 parent 755c10d commit 88a6e5b

19 files changed

+50
-34
lines changed

Marlin/src/inc/SanityCheck.h

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2008,8 +2008,12 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
20082008
#endif
20092009
#endif
20102010

2011-
#if HAS_FAN0 && CONTROLLER_FAN_PIN == FAN_PIN
2012-
#error "You cannot set CONTROLLER_FAN_PIN equal to FAN_PIN."
2011+
#if HAS_FAN0
2012+
#if CONTROLLER_FAN_PIN == FAN_PIN
2013+
#error "You cannot set CONTROLLER_FAN_PIN equal to FAN_PIN."
2014+
#elif ENABLED(FAN_SOFT_PWM_REQUIRED) && DISABLED(FAN_SOFT_PWM)
2015+
#error "FAN_SOFT_PWM is required. Enable it to continue."
2016+
#endif
20132017
#endif
20142018

20152019
#if ENABLED(USE_CONTROLLER_FAN)

Marlin/src/pins/mega/pins_MEGACONTROLLER.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@
121121
#define CONTROLLER_FAN_PIN FAN2_PIN
122122
#endif
123123

124-
#define FAN_SOFT_PWM
124+
#define FAN_SOFT_PWM_REQUIRED
125125

126126
//
127127
// Misc. Functions

Marlin/src/pins/stm32f1/pins_BEAST.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@
9393
#define FAN_PIN PB10
9494
#endif
9595

96-
#define FAN_SOFT_PWM
96+
#define FAN_SOFT_PWM_REQUIRED
9797

9898
//
9999
// Temperature Sensors

Marlin/src/pins/stm32f1/pins_BTT_SKR_CR6.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@
113113
#define HEATER_BED_PIN PC9 // HOT BED
114114

115115
#define FAN_PIN PC6 // FAN
116-
#define FAN_SOFT_PWM
116+
#define FAN_SOFT_PWM_REQUIRED
117117

118118
#define CONTROLLER_FAN_PIN PC7
119119

Marlin/src/pins/stm32f1/pins_CHITU3D.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@
8787
#define FAN_PIN PG14 // MAIN BOARD FAN
8888
#endif
8989

90-
#define FAN_SOFT_PWM
90+
#define FAN_SOFT_PWM_REQUIRED
9191

9292
//
9393
// Temperature Sensors

Marlin/src/pins/stm32f1/pins_CREALITY_V4.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -143,9 +143,7 @@
143143
#ifndef FAN_PIN
144144
#define FAN_PIN PA0 // FAN
145145
#endif
146-
#if PIN_EXISTS(FAN)
147-
#define FAN_SOFT_PWM
148-
#endif
146+
#define FAN_SOFT_PWM_REQUIRED
149147

150148
//
151149
// SD Card

Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@
144144
#define HEATER_BED_PIN PA1 // HOT BED
145145

146146
#define FAN_PIN PA2 // FAN
147-
#define FAN_SOFT_PWM
147+
#define FAN_SOFT_PWM_REQUIRED
148148

149149
//
150150
// SD Card

Marlin/src/pins/stm32f1/pins_CREALITY_V45x.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@
9797
// Heaters / Fans
9898
//
9999

100-
#define FAN_SOFT_PWM
100+
#define FAN_SOFT_PWM_REQUIRED
101101

102102
//
103103
// SD Card

Marlin/src/pins/stm32f1/pins_ERYONE_ERY32_MINI.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,9 @@
3838
//#define DISABLE_DEBUG
3939
#define DISABLE_JTAG
4040
//#define ENABLE_SPI3
41-
#define FLASH_EEPROM_EMULATION
42-
#define FAN_SOFT_PWM
4341

44-
#if ENABLED(FLASH_EEPROM_EMULATION)
42+
#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION)
43+
#define FLASH_EEPROM_EMULATION
4544
#define EEPROM_PAGE_SIZE (0x800U) // 2KB
4645
#define EEPROM_START_ADDRESS (0x8000000UL + (STM32_FLASH_SIZE) * 1024UL - (EEPROM_PAGE_SIZE) * 2UL)
4746
#define MARLIN_EEPROM_SIZE (EEPROM_PAGE_SIZE)
@@ -118,6 +117,8 @@
118117
#endif
119118
#endif
120119

120+
#define FAN_SOFT_PWM_REQUIRED
121+
121122
//
122123
// Misc. Functions
123124
//

Marlin/src/pins/stm32f1/pins_FLY_MINI.h

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,12 @@
3030
//
3131
// Flash EEPROM Emulation
3232
//
33-
#define FLASH_EEPROM_EMULATION
34-
#define EEPROM_PAGE_SIZE 0x800 // 2KB
35-
#define EEPROM_START_ADDRESS (0x8000000 + 256 * 1024 - 2 * EEPROM_PAGE_SIZE) // 256K firmware space
36-
#define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE
33+
#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION)
34+
#define FLASH_EEPROM_EMULATION
35+
#define EEPROM_PAGE_SIZE 0x800 // 2KB
36+
#define EEPROM_START_ADDRESS (0x8000000 + 256 * 1024 - 2 * EEPROM_PAGE_SIZE) // 256K firmware space
37+
#define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE
38+
#endif
3739

3840
//
3941
// Servos

0 commit comments

Comments
 (0)