2026.04 defaults the CPU frequency to the chip maxmimum. This is a step from 160MHz to 240MHz for the original ESP32.
This is fine from a programmer’s point of view but the user has to think a second about thermal issues coming along.
Running a ESPHome firmware doesn’t benefit from the assumption that all calculations are made significant faster and the device may return to low power mode afterwards earlier. My tests resulted the way that the chip temperature raises in most use cases. Here’s a list of some of my implementations. All temperatures in °C
- ESP32 with camera module:
idle: 49.6 -> 52.6 / +3
streaming: 69.6 -> 71.6 / +2
- ESP32-C3: 31.8 -> 31.8 (no change)
- ESP32-C3: 32.8 -> 39.8 / +7
- ESP32 in a m5stack device: 52.8 -> 55.6 / +3
- ESP32-H2 (thread): 26.5 -> 27.5 / +1
It depends in what environments your device is running (boxed/cased or free air) and it’s average load.
Some of your implementations may fail now or later if stressed too hard by temperature. Buzz words are flash endurance and thermal stress.
My conclusion is: if your application doesn’t benefit from a higher cpu clock or you observe thermal increases, limit it to the one you need by adding
esp32:
board: your_board
# limit max temp, ca. 7°C
cpu_frequency: 160MHZ
to your yaml. The frequencies are chip dependend, ESPHome lists them all.
For my curiosity, what temperatures you present here? Die temp, chip surface or can temp?
I see it pretty normal to run mcu at the rated frequency, that’s how our computers and phones do it as well. Power saving is argument apart of course.
sensor:
- platform: internal_temperature
name: "Internal Temperature"
update_interval: 60s
entity_category: diagnostic
disabled_by_default: false
unit_of_measurement: °C
state_class: measurement
device_class: temperature
And after updating from 2026.3.3 to 2026.4.0 the temperature increased quite a bit, roughly +3 °C compared with the moments from right before the update:
3 deg increase of die temp is completely insignificant except for power consumption. Yours is just relaxing at 60 'C. Esp runs happily at 100 'C. And the temp sensing is not calibrated, it can be 10 deg off…
I thought the release notes covered a lot of this pretty well. Release notes have really improved lately. My guess is AI is helping with some of the writing.
Users on battery power or with thermal constraints can override with cpu_frequency: 160MHZ . This is a breaking change as it increases power consumption on affected variants.