ESP8266/ESP32 Dev Board Temperatures with WLED
I recently upgraded an RGB tube lamp with an ESP board running WLED — and almost burned my fingers. Since the board had to fit inside a small, closed case, I started wondering: how hot do different ESP boards get when running WLED?
To find out, I took thermal images of a few ESP8266 and ESP32 development boards running WLED 0.15.1. The goal isn’t lab-grade precision but rather to provide a practical overview of expected heat levels and help with board selection. The pictures were taken at room temperature (22°C), with WLED factory settings (no LEDs configured, not connected to WiFi), powered by 5V USB from a Lenovo X1 Extreme notebook, after 10 minutes of warmup time. Here are the results (see pictures below for details):
| Board | Temperature Hotspots |
|---|---|
| ESP32-C3-Zero | 65°C (SoC) (powered by external 5V supply) |
| ESP32-S3-Zero | 69°C (SoC) / 81°C (LDO) |
| Seeed Studio XIAO ESP32S3 | 53°C (SoC) |
| ESP32 D1 Mini | 50°C (SoC) / 64°C (LDO) |
| ESP8266 D1 Mini | 43°C (SoC) / 47°C (USB UART - why?) |
For my project, I chose the ESP8266 D1 Mini — it ran the coolest, spread heat evenly across its surface, and I powered it directly via 5V and thus skipped the USB/UART. Support for this SoC in WLED has seemed flaky for a while and the docs discourage using it in new installations, but it still seemed like a reasonable tradeoff versus risking a fire.
I bought these boards from Amazon, and they appear to be unbranded clones, so it’s unclear whether the measurements are representative. Only the XIAO came directly from the original manufacturer and showed noticeably better manufacturing quality.
-

ESP32-C3-Zero (front) -

ESP32-C3-Zero (back) -

ESP32-S3-Zero (front) -

ESP32-S3-Zero (back) -

XIAO ESP32S3 (front) -

XIAO ESP32S3 (back) -

ESP32 D1 Mini (front) -

ESP32 D1 Mini (back) -

ESP8266 D1 Mini (front) -

ESP8266 D1 Mini (back)
Software Influence
To test the influence of WLED on temperature, I took samples of the ESP32-C3-Zero with WLED and WiFi connected (R2, middle), WLED with WiFi and a configured addressable LED strip with a static color (not pictured), and an ESPHome firmware configured as a Bluetooth Proxy for Home Assistant (R1, bottom).
There were no considerable temperature differences between different WLED configurations, but the ESPHome firmware ran considerably cooler by ~15°C, despite using Bluetooth in addition to WiFi. This shows that WLED does significant processing, even when idle, and that firmware choice can have a real impact. The following pictures compare R1 and R2 with the factory WLED state from the measurements above (R3):
-

ESP32-C3-Zero comparison (front) -

ESP32-C3-Zero comparison (back)
Heatsink Influence
To test the effect of a passive heatsink, here’s another sample of R1-R3 from the test above, with heatsinks attached to R2 (with thermal paste) and R3 (with thermal adhesive). The aluminum heatsinks were taken from old overclockable DDR2 RAM and fit exactly on the flat backside of the Zero board with the thermal vias from the SoC on the front.
Heat dissipation improved with this setup, lowering the temperatures of R2 and R3 to the level of the ESPHome proxy without a heatsink (R1). However, it’s unclear whether this makes a difference in a small sealed case without airflow.
-

ESP32-C3-Zero comparison with heatsink (front) -

ESP32-C3-Zero comparison with heatsink (back)
Installing WLED on the Seeed Studio XIAO ESP32S3
It took me a while to figure out how to install WLED on this board because the common web installers don’t work with it. This board seems to require a different upload mode (DIO), and here’s the working esptool command with the correct WLED variant. The command is taken from a PlatformIO build upload to this board, and not all arguments might be necessary.
esptool.py --chip esp32s3 --port <YOUR_PORT> --baud 460800 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 8MB 0x10000 './WLED_0.15.1_ESP32-S3_4M_qspi.bin' 