Heated towel rail control

Any tips on how to control a heated towel rail? Something like a Shelly relay and then just do timers for that in HA? Should I have a wall-mounted controller that is my fallback?

Hi,

I created an PWM controller for resistive towel reail heaters using a Shelly Plus 1 (ESP32) and ESPhome. The platform: slow_pwm does a lot of the control, but I added several features like four heat modes, auto-turn-off and safety overheat sensors.

The project isn’t written up yet, but here is how it started:

At the moment, the code has worked for two years but the latest ESPhome release 2025.5.0 has broken the large project (360 lines) so it won’t compile on a HA Yellow - my suspicion is memory.

The end result looks like this (with the Shelly behind a blanking plate and bonded button):

I’ll write it up (with safety disclaimers) sometime.

1 Like

That’s the straightforward way to get control of it. You can wire a switch for manual control.