diff --git a/src/dev/esp32/esp32.cpp b/src/dev/esp32/esp32.cpp index 09615c0e..c24ae0f5 100644 --- a/src/dev/esp32/esp32.cpp +++ b/src/dev/esp32/esp32.cpp @@ -302,7 +302,7 @@ void Esp32Device::update_backlight() #else uint32_t duty = _backlight_power ? map(_backlight_level, 0, 255, 0, 1023) : 0; if(_backlight_invert) duty = 1023 - duty; - ledcWrite(BACKLIGHT_CHANNEL, duty); // ledChannel and value + ledcWrite(BACKLIGHT_CHANNEL, duty); // ledChannel and value #endif } @@ -357,7 +357,11 @@ uint16_t Esp32Device::get_cpu_frequency() bool Esp32Device::is_system_pin(uint8_t pin) { // Also see esp32.cpp / hasp_gpio.cpp -#if defined(ESP32S2) // Arduino NUM_DIGITAL_PINS = 48 (but espressif says it only has 46) +#if defined(CONFIG_IDF_TARGET_ESP32S3) + if((pin >= 22) && (pin <= 25)) return true; // unavailable + if((pin >= 26) && (pin <= 32)) return true; // integrated SPI flash + if((pin >= 33) && (pin <= 37)) return true; // octal flash or PSram +#elif defined(CONFIG_IDF_TARGET_ESP32S2) // Arduino NUM_DIGITAL_PINS = 48 (but espressif says it only has 46) // From https://hggh.github.io/esp32/2021/01/06/ESP32-S2-pinout.html, it looks like IO26 is for PSRAM // More info https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/_images/esp32-s2_saola1-pinout.jpg // Datasheet @@ -372,11 +376,7 @@ bool Esp32Device::is_system_pin(uint8_t pin) // SPIWP = IO14 or IO38 if((pin >= 33) && (pin <= 38)) return true; // SPI flash if(psramFound() && (pin == 26)) return true; // PSRAM. IO26 = SPICS1, the rest are shared with the flash -#elif defined(ESP32S3) - if((pin >= 22) && (pin <= 25)) return true; // unavailable - if((pin >= 26) && (pin <= 32)) return true; // integrated SPI flash - if((pin >= 33) && (pin <= 37)) return true; // octal flash or PSram -#else +#elif defined(CONFIG_IDF_TARGET_ESP32) if((pin >= 6) && (pin <= 11)) return true; // integrated SPI flash #ifndef HASP_USE_GPIO37 if(pin == 37) return true; // unavailable