From aa98fe487dbed80b3ffe425dfed6e656f958f6dd Mon Sep 17 00:00:00 2001 From: Will Tatam Date: Wed, 5 Aug 2026 19:22:41 +0100 Subject: [PATCH] Update to IDF 5.5.4 --- platformio.ini | 5 +++-- wled00/mbedtls_sha1_shim.cpp | 5 +++-- wled00/src/dependencies/time/TimeLib.h | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/platformio.ini b/platformio.ini index 8a060ba0fe..9757f822b3 100644 --- a/platformio.ini +++ b/platformio.ini @@ -319,8 +319,8 @@ lib_deps = lib_ignore = [esp32_idf_V5] -;; build environment for ESP32 using ESP-IDF 5.3.4 / arduino-esp32 v3.1.10 -platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.02.30/platform-espressif32.zip +;; Platform 2026.05.50 Tasmota Arduino Core 3.3.8.260506 based on IDF 5.5.4.260407 +platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.05.50/platform-espressif32.zip platform_packages = build_unflags = ${common.build_unflags} -Wno-volatile ;; avoid warning on .c files: "-Wno-volatile only applies to c++ files" @@ -331,6 +331,7 @@ build_flags = -g ; -DESP32=ESP32 ;; disabled to avoid compiler warning: "ESP32" redefined ${esp32_all_variants.build_flags} -D WLED_USE_SHARED_RMT ;; ToDO: check if NeoESP32RmtHI is still needed with V5 (see discussion in PR#4838) + -D__unreachable=__builtin_unreachable ;; picolibc (new toolchain-xtensa-esp-elf) dropped __unreachable(), but esp_dmx still calls it ;;-D WLED_DISABLE_INFRARED ;; ToDO: needs more testing with V5 ;;-D WLED_DISABLE_MQTT ;; ToDO: needs more testing with V5 -D WLED_ENABLE_DMX_INPUT diff --git a/wled00/mbedtls_sha1_shim.cpp b/wled00/mbedtls_sha1_shim.cpp index a009553bee..e6882ea48b 100644 --- a/wled00/mbedtls_sha1_shim.cpp +++ b/wled00/mbedtls_sha1_shim.cpp @@ -1,8 +1,9 @@ #include "wled.h" #ifdef ESP32 -// ESP32-C5 on pioarduino uses IDF 5.5+ which has SHA1 built-in, skip shim -#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 2, 0) && ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 5, 0) #include "mbedtls/sha1.h" +// Some ESP-IDF builds/platforms compile mbedtls without SHA1 support (MBEDTLS_SHA1_C undefined), +// while others (e.g. ESP32-C5 on pioarduino) have it built-in. Only provide the shim when missing. +#if !defined(MBEDTLS_SHA1_C) #include "SHA1Builder.h" // Wrapper functions to map mbedtls SHA1 calls to Arduino SHA1Builder diff --git a/wled00/src/dependencies/time/TimeLib.h b/wled00/src/dependencies/time/TimeLib.h index 5004f07165..0270d9b88b 100644 --- a/wled00/src/dependencies/time/TimeLib.h +++ b/wled00/src/dependencies/time/TimeLib.h @@ -17,7 +17,7 @@ #endif -#if !defined(__time_t_defined) // avoid conflict with newlib or other posix libc +#if !defined(__time_t_defined) && !defined(_TIME_T_DECLARED) // avoid conflict with newlib, picolibc, or other posix libc typedef unsigned long time_t; #endif