From 89b267b8170297736dd4436e831c01efcd7312e6 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 16 May 2026 22:20:35 +0000 Subject: [PATCH] Add GPIO36 Vext power control for Heltec WiFi LoRa 32 V3 - Automatically initialize GPIO36 and pull LOW on startup - Enables OLED power supply (Vext) without manual wiring - Checks for HELTEC_VEXT_PIN build flag before initialization - Supports WLED 17.1.1 release with integrated display support https://claude.ai/code/session_0177tCiDXsjQyQ86Nu7VYP5S --- .../usermod_v2_four_line_display_ALT.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.cpp b/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.cpp index 1808a39b5e..d2ef442a15 100644 --- a/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.cpp +++ b/usermods/usermod_v2_four_line_display_ALT/usermod_v2_four_line_display_ALT.cpp @@ -215,6 +215,10 @@ void FourLineDisplayUsermod::sleepOrClock(bool enabled) { // gets called once at boot. Do all initialization that doesn't depend on // network here void FourLineDisplayUsermod::setup() { +#ifdef HELTEC_VEXT_PIN + pinMode(HELTEC_VEXT_PIN, OUTPUT); + digitalWrite(HELTEC_VEXT_PIN, LOW); +#endif bool isSPI = (type == SSD1306_SPI || type == SSD1306_SPI64 || type == SSD1309_SPI64); // check if pins are -1 and disable usermod as PinManager::allocateMultiplePins() will accept -1 as a valid pin