From ae39fe8a0cf2e8bf2ba3d43cf1f940b2c141e0ad Mon Sep 17 00:00:00 2001 From: Frank Date: Sun, 18 Dec 2022 18:35:28 +0100 Subject: [PATCH] usermod 4ld: start disabled on -S3 workaround for a nasty bug in idf v4 - device hangs for several minutes if you start with display not attached. --- .../usermod_v2_four_line_display.h | 5 ++++- .../usermod_v2_four_line_display_ALT.h | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/usermods/usermod_v2_four_line_display/usermod_v2_four_line_display.h b/usermods/usermod_v2_four_line_display/usermod_v2_four_line_display.h index c3e9667f..e14a8269 100644 --- a/usermods/usermod_v2_four_line_display/usermod_v2_four_line_display.h +++ b/usermods/usermod_v2_four_line_display/usermod_v2_four_line_display.h @@ -120,8 +120,11 @@ class FourLineDisplayUsermod : public Usermod { uint32_t screenTimeout = SCREEN_TIMEOUT_MS; // in ms bool sleepMode = true; // allow screen sleep? bool clockMode = false; // display clock +#if defined(ARDUINO_ARCH_ESP32) && ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(4, 0, 0) + bool enabled = false; // WLEDMM workaround for I2C bugs in IDF v4.4.1 +#else bool enabled = true; - +#endif // Next variables hold the previous known values to determine if redraw is // required. String knownSsid = ""; diff --git a/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.h b/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.h index 79b2676c..e12149a1 100644 --- a/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.h +++ b/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.h @@ -132,7 +132,11 @@ class FourLineDisplayUsermod : public Usermod { bool sleepMode = true; // allow screen sleep? bool clockMode = false; // display clock bool showSeconds = true; // display clock with seconds +#if defined(ARDUINO_ARCH_ESP32) && ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(4, 0, 0) + bool enabled = false; // WLEDMM workaround for I2C bugs in IDF v4.4.1 +#else bool enabled = true; +#endif bool contrastFix = false; // Next variables hold the previous known values to determine if redraw is