Skip to content

Commit 03516f0

Browse files
♻️ No ui.reinit_lcd on any ExtUI (MarlinFirmware#23722)
Co-authored-by: Scott Lahteine <[email protected]>
1 parent e8cc050 commit 03516f0

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

Marlin/src/inc/Conditionals_post.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -459,8 +459,8 @@
459459

460460
#endif
461461

462-
#if ANY(HAS_GRAPHICAL_TFT, LCD_USE_DMA_FSMC, HAS_FSMC_GRAPHICAL_TFT, HAS_SPI_GRAPHICAL_TFT, IS_DWIN_MARLINUI) || !PIN_EXISTS(SD_DETECT)
463-
#define NO_LCD_REINIT 1 // Suppress LCD re-initialization
462+
#if PIN_EXISTS(SD_DETECT) && NONE(HAS_GRAPHICAL_TFT, LCD_USE_DMA_FSMC, HAS_FSMC_GRAPHICAL_TFT, HAS_SPI_GRAPHICAL_TFT, IS_DWIN_MARLINUI, EXTENSIBLE_UI)
463+
#define REINIT_NOISY_LCD 1 // Have the LCD re-init on SD insertion
464464
#endif
465465

466466
/**

Marlin/src/lcd/marlinui.cpp

+2-4
Original file line numberDiff line numberDiff line change
@@ -625,7 +625,7 @@ void MarlinUI::init() {
625625
next_filament_display = millis() + 5000UL; // Show status message for 5s
626626
#endif
627627
goto_screen(menu_main);
628-
IF_DISABLED(NO_LCD_REINIT, init_lcd()); // May revive the LCD if static electricity killed it
628+
reinit_lcd(); // Revive a noisy shared SPI LCD
629629
return;
630630
}
631631

@@ -1697,9 +1697,7 @@ void MarlinUI::init() {
16971697
}
16981698
}
16991699

1700-
#if PIN_EXISTS(SD_DETECT) && DISABLED(NO_LCD_REINIT)
1701-
init_lcd(); // Revive a noisy shared SPI LCD
1702-
#endif
1700+
reinit_lcd(); // Revive a noisy shared SPI LCD
17031701

17041702
refresh();
17051703

Marlin/src/lcd/marlinui.h

+2
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,8 @@ class MarlinUI {
209209
static void init_lcd() {}
210210
#endif
211211

212+
static void reinit_lcd() { TERN_(REINIT_NOISY_LCD, init_lcd()); }
213+
212214
#if HAS_WIRED_LCD
213215
static bool detected();
214216
#else

0 commit comments

Comments
 (0)