From 96538b492a24306a97cd08d61557914a0672aa83 Mon Sep 17 00:00:00 2001 From: Austin Lane Date: Wed, 22 Apr 2026 16:39:32 -0400 Subject: [PATCH 1/4] I thought I fixed this --- variants/esp32s3/t5s3_epaper/variant.h | 1 + 1 file changed, 1 insertion(+) diff --git a/variants/esp32s3/t5s3_epaper/variant.h b/variants/esp32s3/t5s3_epaper/variant.h index 803b582af..2459af967 100644 --- a/variants/esp32s3/t5s3_epaper/variant.h +++ b/variants/esp32s3/t5s3_epaper/variant.h @@ -1,3 +1,4 @@ +#include "pins_arduino.h" // Display (E-Ink) ED047TC1 - 8bit parallel #define EPD_WIDTH 960 From 8dc82c45b88947bb125efe4509ccd59448a21079 Mon Sep 17 00:00:00 2001 From: mverch67 Date: Wed, 22 Apr 2026 22:39:33 +0200 Subject: [PATCH 2/4] fix linker error using response file (p4 only) --- extra_scripts/ld_response_file.py | 20 ++++++++++++++++++++ variants/esp32p4/esp32p4.ini | 4 ++++ 2 files changed, 24 insertions(+) create mode 100644 extra_scripts/ld_response_file.py diff --git a/extra_scripts/ld_response_file.py b/extra_scripts/ld_response_file.py new file mode 100644 index 000000000..0b91cf862 --- /dev/null +++ b/extra_scripts/ld_response_file.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python3 +# force linker response file instead of command line arguments + +Import("env") + + +def wrap_with_tempfile(command_key): + command = env.get(command_key) + if not command or not isinstance(command, str): + return + if "TEMPFILE(" in command: + return + env.Replace(**{command_key: "${TEMPFILE('%s')}" % command}) + + +# Force SCons to spill long commands into response files on this target. +env.Replace(MAXLINELENGTH=8192) + +for key in ("LINKCOM", "CXXLINKCOM", "SHLINKCOM", "SHCXXLINKCOM"): + wrap_with_tempfile(key) diff --git a/variants/esp32p4/esp32p4.ini b/variants/esp32p4/esp32p4.ini index f51ed1975..d33a93d84 100644 --- a/variants/esp32p4/esp32p4.ini +++ b/variants/esp32p4/esp32p4.ini @@ -15,6 +15,10 @@ build_flags = build_src_filter = ${esp32_common.build_src_filter} - - - - - - - +extra_scripts = + ${esp32p4_base.extra_scripts} + extra_scripts/ld_response_file.py + ; Override esp32_common component pruning: keep esp_hosted + esp_wifi_remote for P4 hosted BT custom_component_remove = espressif/esp_modem From b0d7440bad74b8e35cae513df0871635b932649f Mon Sep 17 00:00:00 2001 From: mverch67 Date: Wed, 22 Apr 2026 22:45:53 +0200 Subject: [PATCH 3/4] fix infinite loop --- variants/esp32p4/esp32p4.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/variants/esp32p4/esp32p4.ini b/variants/esp32p4/esp32p4.ini index d33a93d84..44094ee04 100644 --- a/variants/esp32p4/esp32p4.ini +++ b/variants/esp32p4/esp32p4.ini @@ -16,7 +16,7 @@ build_src_filter = ${esp32_common.build_src_filter} - - - - - - - extra_scripts = - ${esp32p4_base.extra_scripts} + ${esp32_common.extra_scripts} extra_scripts/ld_response_file.py ; Override esp32_common component pruning: keep esp_hosted + esp_wifi_remote for P4 hosted BT From f586824435a0e9c1f8bc3f062c52f5ab7f7b8b07 Mon Sep 17 00:00:00 2001 From: Austin Lane Date: Wed, 22 Apr 2026 17:25:34 -0400 Subject: [PATCH 4/4] Fix Power.cpp check warning Local variable 'config' shadows outer variable [shadowVariable] --- src/Power.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Power.cpp b/src/Power.cpp index 9677d85a8..b37424b24 100644 --- a/src/Power.cpp +++ b/src/Power.cpp @@ -437,7 +437,7 @@ class AnalogBatteryLevel : public HasBatteryLevel voltage_mv = (int)((raw / max_code) * DEFAULT_VREF); } scaled = voltage_mv * operativeAdcMultiplier; -#else // block for all other platforms +#else // block for all other platforms #ifdef ARCH_NRF52 concurrency::LockGuard saadcGuard(concurrency::nrf52SaadcLock); #endif @@ -735,19 +735,19 @@ bool Power::analogInit() } } - adc_oneshot_chan_cfg_t config = { + adc_oneshot_chan_cfg_t chan_cfg = { .atten = atten, .bitwidth = adc_width, }; - esp_err_t err = adc_oneshot_config_channel(adc_handle, adc_channel, &config); + esp_err_t err = adc_oneshot_config_channel(adc_handle, adc_channel, &chan_cfg); if (err != ESP_OK) { LOG_ERROR("ADC channel config failed: %s", esp_err_to_name(err)); return false; } adc_calibrated = initAdcCalibration(); -#endif // ARCH_ESP32 +#endif // ARCH_ESP32 // NRF52 ADC init moved to powerHAL_init in nrf52 platform