Fix mini12864 v2.1 + PSU control + NeoPixel backlight (#21021)
This commit is contained in:
parent
42761acf4f
commit
6dcb77f7b5
@ -147,12 +147,14 @@ void LEDLights::set_color(const LEDColor &incol
|
||||
millis_t LEDLights::led_off_time; // = 0
|
||||
|
||||
void LEDLights::update_timeout(const bool power_on) {
|
||||
if (lights_on) {
|
||||
const millis_t ms = millis();
|
||||
if (power_on)
|
||||
reset_timeout(ms);
|
||||
else if (ELAPSED(ms, led_off_time))
|
||||
set_off();
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
@ -203,7 +203,7 @@ public:
|
||||
public:
|
||||
static inline void reset_timeout(const millis_t &ms) {
|
||||
led_off_time = ms + LED_BACKLIGHT_TIMEOUT;
|
||||
if (!lights_on) set_default();
|
||||
if (!lights_on) update();
|
||||
}
|
||||
static void update_timeout(const bool power_on);
|
||||
#endif
|
||||
|
@ -994,7 +994,7 @@ void MarlinUI::update() {
|
||||
refresh(LCDVIEW_REDRAW_NOW);
|
||||
|
||||
#ifdef LED_BACKLIGHT_TIMEOUT
|
||||
leds.reset_timeout(ms);
|
||||
if (!powersupply_on) leds.reset_timeout(ms);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -121,11 +121,20 @@ void menu_led() {
|
||||
BACK_ITEM(MSG_MAIN);
|
||||
|
||||
#if ENABLED(LED_CONTROL_MENU)
|
||||
#if ENABLED(PSU_CONTROL)
|
||||
extern bool powersupply_on;
|
||||
#else
|
||||
constexpr bool powersupply_on = true;
|
||||
#endif
|
||||
if (powersupply_on) {
|
||||
editable.state = leds.lights_on;
|
||||
EDIT_ITEM(bool, MSG_LEDS, &editable.state, leds.toggle);
|
||||
}
|
||||
|
||||
#if ENABLED(LED_COLOR_PRESETS)
|
||||
ACTION_ITEM(MSG_SET_LEDS_DEFAULT, leds.set_default);
|
||||
#endif
|
||||
|
||||
#if ENABLED(NEOPIXEL2_SEPARATE)
|
||||
editable.state = leds2.lights_on;
|
||||
EDIT_ITEM(bool, MSG_LEDS2, &editable.state, leds2.toggle);
|
||||
|
Loading…
Reference in New Issue
Block a user