If you have flashed your Shelly 2.5 with ESPHome, make sure to configure GPIO16. Otherwise, the pin will be short-circuited and cause the unit to heat up significantly, creating a potential fire hazard!
I have two Shelly 2.5 units in my house, running ESPHome. I noticed that they run quite hot, usually floating around 62°C or 143°F. I thought this was due to its small form factor and installation location.
Well, not true! It’s a bad ESPHome config causing a short circuit, yikes!
To fix this, configure GPIO16 as an input. You can do that by defining a
binary_sensor in your ESPHome config:
binary_sensor: - platform: gpio pin: GPIO16 name: "ade7953 IRQ pin" internal: true
After deploying this to my Shelly 2.5 units, the internal temperature drops by 15°C (59°F). Crazy!
So it’s fixed now, but what was the problem?
According to this GitHub issue the problem is related to the ADE7953 energy monitoring chip. The IRQ pin of the chip is connected to GPIO16, and when it’s left floating (not being configured as input or output), it acts as a load, creating additional heat (and potentially a shortened lifespan of the device).