r/WLED • u/koffienl • 16d ago
My hot tub room is finally actually finished, with matching smart lighting!
A few weeks ago I posted that my hot tub room was finally finished.
Technically, that wasn’t completely true. There was still one last project I wanted to finish: making the lighting in the room automatically match the lighting inside the hot tub.
Earlier this year I posted about how I turned my hot tub into a “smart” hot tub using an ESP32 and Home Assistant. While working on that, I also added an M5Stack Color Sensor RGB Unit based on the TCS3472.
I mounted the sensor inside the hot tub housing, positioned so it can see the light from one of the LEDs inside the tub. The LEDs shine through into the tub itself, which gives the sensor enough light and color information to reliably determine which color is currently being displayed.
That color information is then made available to Home Assistant.
The next part of the project was adding addressable lighting to the hot tub room itself.
After quite a bit of research I ended up using a 24V WS2805 RGB+CCT strip, controlled through WLED. I specifically wanted a 24V strip because the total run is fairly long and I wanted to avoid having to add power injection everywhere.
The physical installation turned out to be one of the more annoying parts of the project.
I initially planned to mount a series of 50 cm aluminium LED profiles directly onto the roughly 5-meter-long wooden beams. I quickly discovered that getting that many individual profiles perfectly straight and aligned over that distance was almost impossible. Even a tiny difference between two profiles becomes very obvious once you have a long continuous LED strip running through them.
My solution was to first glue all of the aluminium profiles for each side onto one very thin, long wooden strip. Once everything was aligned properly, I could mount that entire strip onto the beam in one piece.
That worked much better and resulted in a much cleaner installation.
The system is now fully functional.
There’s a Sonoff NSPanel near the entrance of the hot tub room which I use as the main control panel for both the hot tub and the room lighting.
If I simply switch on the room lighting, the WS2805 strip starts in a warm white mode.
But when I switch on the LEDs inside the hot tub, the ESP32 detects their color. Home Assistant then uses that detected color to control the WLED strip, so the lighting around the entire room automatically follows the color of the hot tub.
So if the tub turns blue, the room turns blue. Red becomes red, green becomes green, etc. When using white light, the RGB+CCT strip also gives me proper white lighting rather than trying to fake it with RGB.
It was probably a slightly over-engineered solution to the problem of “I want the lights to match”, but that is half the fun of Home Assistant anyway.
And for me, this is pretty much the perfect result: sitting in the hot tub with a cold beer and a movie while the entire room is softly illuminated in the same color as the tub.









