Installing new device (or update old) dont work

I have so much trouble with EspHome.

One esp32 stopped to give values (Light sensor) , so I try to update the sensor, it dont work, and I got an error msg.
I then try to flash a BRAND new ESP32c3, and a ESP32 wroom, but got the same error msg when I try to Install it in HA.

this is the error log:

INFO ESPHome 2026.2.4
INFO Reading configuration /config/esphome/esphome-lux.yaml...
INFO Generating C++ source...
INFO Compiling app... Build path: /data/build/esphome-lux
Processing esphome-lux (board: esp32dev; framework: espidf; platform: https://github.com/pioarduino/platform-espressif32/releases/download/55.03.37/platform-espressif32.zip)
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
 - contrib-piohome @ 3.4.4 
 - framework-espidf @ 3.50502.0 (5.5.2) 
 - tool-cmake @ 4.0.3 
 - tool-esp-rom-elfs @ 2024.10.11 
 - tool-esptoolpy @ 5.1.2 
 - tool-ninja @ 1.13.1 
 - tool-scons @ 4.40801.0 (4.8.1) 
 - toolchain-xtensa-esp-elf @ 14.2.0+20251107
Reading CMake configuration...
No dependencies
Compiling .pioenvs/esphome-lux/esp_driver_gpio/src/gpio.c.o
Compiling .pioenvs/esphome-lux/esp_driver_gptimer/src/gptimer_common.c.o
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c: In function 'gpio_config':
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:385:39: error: 'G' undeclared (first use in this function)
  385 |             if ((pGPIOConfig->mode) & G<  MODE_DEF_OUTPUT) {
      |                                       ^
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:385:39: note: each undeclared identifier is reported only once for each function it appears in
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:385:41: error: stray '\21' in program
  385 |             if ((pGPIOConfig->mode) & G<<U+0011><U+0000><U+0000>MODE_DEF_OUTPUT) {
      |                                         ^~~~~~~~
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:385:42: warning: null character(s) ignored
  385 |             if ((pGPIOConfig->mode) & G<<U+0011><U+0000><U+0000>MODE_DEF_OUTPUT) {
      |                                                 ^~~~~~~~
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:385:44: error: 'MODE_DEF_OUTPUT' undeclared (first use in this function); did you mean 'GPIO_MODE_DEF_OUTPUT'?
  385 |             if ((pGPIOConfig->mode) & G<  MODE_DEF_OUTPUT) {
      |                                            ^~~~~~~~~~~~~~~
      |                                            GPIO_MODE_DEF_OUTPUT
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:386:10: error: expected expression before '<' token
  386 |          <     output_en = 1;
      |          ^
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:386:11: error: stray '\21' in program
  386 |          <<U+0011><U+0000><U+0000>   output_en = 1;
      |           ^~~~~~~~
/data/cache/platformio/packages/framework-espidf/components/esp_driver_gpio/src/gpio.c:386:12: warning: null character(s) ignored
  386 |          <<U+0011><U+0000><U+0000>   output_en = 1;
      |                   ^~~~~~~~
*** [.pioenvs/esphome-lux/esp_driver_gpio/src/gpio.c.o] Error 1
========================= [FAILED] Took 16.12 seconds =========================

The error log indicates you have a corrupted install of platformio.

This appears to not be unheard of, but also it’s not common. There are several ways to deal with it. I normally just delete the platformio cache folder, since that always works. A full clean of build files should do it too. An uninstall of esphome and reinstall might do it.