Cannot update ESPHome 2025.12.4

A happy new year everyone!
I do have a Waveshare epaper display application which was running flawlessly for over a year. All ESPhome updates over the past could be installed w/o problems. Now I wanted to update the ESP32 to version 2025.12.4 by using the “Update” button in the ESPhome dashboard and I am getting to following compile error:

INFO ESPHome 2025.12.4
INFO Reading configuration /config/esphome/epaper75.yaml...
WARNING GPIO15 is a strapping PIN and should only be used for I/O with care.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq/#why-am-i-getting-a-warning-about-strapping-pins
INFO Detected timezone 'Europe/Berlin'
INFO Generating C++ source...
INFO Setting CONFIG_LWIP_MAX_SOCKETS to 11 (registered: api=4, captive_portal=4, mdns=2, ota=1)
INFO Compiling app... Build path: /data/build/epaper75
Processing epaper75 (board: esp32dev; framework: arduino, espidf; platform: https://github.com/pioarduino/platform-espressif32/releases/download/55.03.31-2/platform-espressif32.zip)
--------------------------------------------------------------------------------
Created pioarduino Python virtual environment using uv: /root/.platformio/penv
Installed esptool from tl-install path: /data/cache/platformio/packages/tool-esptoolpy
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
 - contrib-piohome @ 3.4.4 
 - framework-arduinoespressif32 @ 3.3.2 
 - framework-arduinoespressif32-libs @ 5.5.0+sha.129cd0d247 
 - framework-espidf @ 3.50501.0 (5.5.1) 
 - tool-cmake @ 4.0.3 
 - tool-esp-rom-elfs @ 2024.10.11 
 - tool-esptoolpy @ 5.1.0 
 - tool-mklittlefs @ 3.2.0 
 - tool-ninja @ 1.13.1 
 - tool-scons @ 4.40801.0 (4.8.1) 
 - toolchain-xtensa-esp-elf @ 14.2.0+20241119
Creating a new virtual environment for IDF Python dependencies using uv
Using Python 3.12.10 environment at: /root/.platformio/penv/.espidf-5.5.1
Installing ESP-IDF's Python dependencies with uv
Using Python 3.12.10 environment at: /root/.platformio/penv/.espidf-5.5.1
Resolved 26 packages in 1.25s
Downloading pydantic-core (1.8MiB)
Downloading cryptography (3.8MiB)
 Downloaded pydantic-core
 Downloaded cryptography
Prepared 16 packages in 1.65s
Installed 26 packages in 59ms
 + annotated-types==0.7.0
 + certifi==2026.1.4
 + cffi==2.0.0
 + charset-normalizer==3.4.4
 + click==8.3.1
 + colorama==0.4.6
 + cryptography==44.0.3
 + esp-idf-kconfig==2.5.0
 + idf-component-manager==2.4.3
 + idna==3.11
 + jsonref==1.1.0
 + pycparser==2.23
 + pydantic==2.11.10
 + pydantic-core==2.33.2
 + pydantic-settings==2.12.0
 + pyparsing==3.3.1
 + python-dotenv==1.2.1
 + requests==2.32.5
 + requests-file==3.0.1
 + requests-toolbelt==1.0.0
 + ruamel-yaml==0.19.1
 + tqdm==4.67.1
 + truststore==0.10.4
 + typing-extensions==4.15.0
 + typing-inspection==0.4.2
 + urllib3==1.26.20
Reading CMake configuration...
Dependency Graph
|-- Networking @ 3.3.2
|-- ESP32 Async UDP @ 3.3.2
|-- DNSServer @ 3.3.2
|-- WiFi @ 3.3.2
|-- ESPmDNS @ 3.3.2
|-- noise-c @ 0.1.10
|-- SPI @ 3.3.2
Compiling .pioenvs/epaper75/src/esphome/components/waveshare_epaper/waveshare_213v3.cpp.o
Compiling .pioenvs/epaper75/src/main.cpp.o
Compiling .pioenvs/epaper75/lib4c5/Network/NetworkUdp.cpp.o
Compiling .pioenvs/epaper75/lib9a9/AsyncUDP/AsyncUDP.cpp.o
src/esphome/components/waveshare_epaper/waveshare_213v3.cpp: In member function 'virtual void esphome::waveshare_epaper::WaveshareEPaper2P13InV3::dump_config()':
src/esphome/components/waveshare_epaper/waveshare_213v3.cpp:179:1: error: expected ';' before '}' token
  179 | }
      | ^
*** [.pioenvs/epaper75/src/esphome/components/waveshare_epaper/waveshare_213v3.cpp.o] Error 1
========================= [FAILED] Took 75.00 seconds =========================

There were no code changes on my end, and no changes to the waveshare_213v3.ccp code (at least that I am aware of)

I am runnung homeassistant Core2025.12.5; Supervisor2025.12.3; Operating System16.3; Frontend20251203.3, ESPhome

Any idea anyone what could be wrong here?
Thanks Stephan

Like always, first try to clean build files.
If it doesn’t help, try to roll back to some precedent version.

In case someone hits this thread with the same question, cleaning build files is done from ESPHome Builder menu.

Either the individual device three dot menu or top right to clean them all.

Thanks. I tried this with no success. Still getting the same compile error. Since my other esphome apps compile and update fine with the latest emshome version, the problem seems to be in conjunction with the waveshare libraries.

Compiling .pioenvs/epaper75/src/esphome/components/waveshare_epaper/waveshare_213v3.cpp.o
Compiling .pioenvs/epaper75/src/esphome/components/waveshare_epaper/waveshare_epaper.cpp.o
Compiling .pioenvs/epaper75/src/esphome/components/web_server/ota/ota_web_server.cpp.o
src/esphome/components/waveshare_epaper/waveshare_213v3.cpp: In member function 'virtual void esphome::waveshare_epaper::WaveshareEPaper2P13InV3::dump_config()':
src/esphome/components/waveshare_epaper/waveshare_213v3.cpp:179:1: error: expected ';' before '}' token
  179 | }
      | ^
Compiling .pioenvs/epaper75/src/esphome/components/web_server_base/web_server_base.cpp.o
*** [.pioenvs/epaper75/src/esphome/components/waveshare_epaper/waveshare_213v3.cpp.o] Error 1
========================= [FAILED] Took 253.98 seconds =========================

So my question is where can I find the esphome source files? I am not able to find the `.pioenvs directory on my homeassistant installation.

My source files are in /homeassistant/esphome/

But, I don’t see any build files in there. Not sure where they go

Same here. Anyway, I think I found the issue. I am using an external component from https://github.com/twisterss/esphome-dev.git to support multiple colors. Apparently, that code is broken with the current esphome environment.

1 Like

Has anybody logged a problem in GitHub for this to bring it to the attention of the developer?

Have you tried ”Clean All” in ESPHome Builder?