From 546f843f84696dbdf57bae97751fe2acd37c889b Mon Sep 17 00:00:00 2001 From: Frank <91616163+softhack007@users.noreply.github.com> Date: Tue, 7 May 2024 16:24:00 +0200 Subject: [PATCH] ... bugfix fix avoid double entries in rsvd[] --- boards/lolin_s3_mini.json | 47 +++++++++++++++++++++++++++++++++++++++ wled00/xml.cpp | 6 ++++- 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 boards/lolin_s3_mini.json diff --git a/boards/lolin_s3_mini.json b/boards/lolin_s3_mini.json new file mode 100644 index 00000000..f8560fa7 --- /dev/null +++ b/boards/lolin_s3_mini.json @@ -0,0 +1,47 @@ +{ + "build": { + "arduino": { + "ldscript": "esp32s3_out.ld", + "memory_type": "qio_qspi" + }, + "core": "esp32", + "extra_flags": [ + "-DBOARD_HAS_PSRAM", + "-DARDUINO_LOLIN_S3_MINI", + "-DARDUINO_USB_MODE=1" + ], + "f_cpu": "240000000L", + "f_flash": "80000000L", + "flash_mode": "qio", + "hwids": [ + [ + "0x303A", + "0x8167" + ] + ], + "mcu": "esp32s3", + "variant": "esp32s3" + }, + "connectivity": [ + "bluetooth", + "wifi" + ], + "debug": { + "openocd_target": "esp32s3.cfg" + }, + "frameworks": [ + "arduino", + "espidf" + ], + "name": "WEMOS LOLIN S3 Mini", + "upload": { + "flash_size": "4MB", + "maximum_ram_size": 327680, + "maximum_size": 4194304, + "require_upload_port": true, + "speed": 460800 + }, + "url": "https://www.wemos.cc/en/latest/s3/index.html", + "vendor": "WEMOS" +} + \ No newline at end of file diff --git a/wled00/xml.cpp b/wled00/xml.cpp index f7ee4f4d..dbb9ce75 100644 --- a/wled00/xml.cpp +++ b/wled00/xml.cpp @@ -196,7 +196,11 @@ void appendGPIOinfo() { size_t roLen = strlen(ro_gpio); char pinString[10]; for(int pinNr = 0; pinNr < WLED_NUM_PINS; pinNr++) { // 49 = highest PIN on ESP32-S3 - if ((!pinManager.isPinOk(pinNr, false)) || (pinManager.getPinOwner(pinNr) == PinOwner::SPI_RAM)) { // WLEDMM add SPIRAM pins as "reserved" + #if defined(ARDUINO_ARCH_ESP32) && !defined(BOARD_HAS_PSRAM) + if ((!pinManager.isPinOk(pinNr, false)) || (pinManager.getPinOwner(pinNr) == PinOwner::SPI_RAM)) { // WLEDMM add SPIRAM pins as "reserved" (pico boards) + #else + if (!pinManager.isPinOk(pinNr, false)) { + #endif sprintf(pinString, "%s%d", strlen(rsvd)==rsLen?"":",", pinNr); strcat(rsvd, pinString); }