The Heat Is On With This ESP8266 Controlled Sauna

We’ll be perfectly honest: sitting inside a heated box sounds just a bit too much like torture for our tastes. But if we did somehow find ourselves in possession of a fancy new sauna, we’d more than likely follow in the footsteps of [Al Betschart] and make the thing controllable with the ESP8266. After all, if you’re going to be cooked alive, you might as well do it on your own terms.

The sauna itself was purchased as a kit, and included an electric heater controlled by a thermostat. As explained in his detailed documentation, [Al] integrated a Sonoff TH16 into the original heater circuit so he could control power to the coils remotely. The TH16 also includes support for a thermal sensor, which allowed him to get a reading on the sauna’s internal temperature. The new electronics were mounted in a weather-proof box on the back of the sauna, complete with an external WiFi antenna to help get a good signal back to the house.

At this point the project could technically be done if all you wanted was remote control, but [Al] wanted to create a replacement firmware for the Sonoff that was specifically geared towards the sauna. So he came up with some code that uses MQTT to connect the heater to his home automation system, and allows configuring things like the maximum temperature and how long the sauna will run before turning itself off.

Interestingly, the company who makes these saunas thought the work [Al] did to integrate their product into his home automation system was so impressive they actually interviewed him about it and put it up on their site for others who might be inspired by his work. We’ve covered a lot of hacks to consumer devices here at Hackaday, and it’s exceedingly rare for a company to be so supportive of customers fiddling around with their products (especially in a case like this where there’s a real chance of burning your house down), so credit where credit is due.

The last time we brought you a sauna hack it was quite literally in a van down by the river, so the addition of an ESP8266 certainly brings this more into our comfort zone. Figuratively, if not literally.

[Thanks to Jon for the tip.]

9 thoughts on “The Heat Is On With This ESP8266 Controlled Sauna

  1. Firstly nice job and congratulations on your sauna. Everyone should have one.

    I was wondering about the electrical piping, we don’t do that here, and then i found out it’s in the states, so not wondering anymore. I’d cover it up though, it’s not really nice looking. Just put some gouged log on it.

    Unfortunately i don’t have electrical sauna outside. Mine is inside, so for this to be useful for me, i would need a way to close the door between shower and sauna, when the stove is activated. But i’ll see if i could adapt it. One could add a humidity sensor, you know, for fun or fans.

    “If booze, tar and sauna doesn’t help, it’s fatal”

  2. Some things are better left to robust control WITHOUT any cloud connection. The classic thermostat and timer for the sauna are a quite good solution. Of course a remote activation could be tempting, especially on a dark, cold winter evening it could be nice to switch it on before you arrive at home .
    But it’s not good if some random hacker is able to switch it on or change the temperature setting (electricity bill, fire hazard).

      1. Sauna thermostats go up so high that you still have a risk of fire if you leave it on. The thermostat is at the seat level, and the temperatures at the ceiling can go up to smoke point if you leave it on.

        Rather, you need a re-settable timer that only lets the sauna run for something like 4 hours, and then requires a full power cycle.

  3. The nice thing with this sauna is that it sits outside, so if it were to catch on fire, it would not necessarily take your house with it. My sauna is in the house. I have not used it in a while. It takes quiet a while for it to really get up to full sauna mode. It is somewhat like one of my shops that I only heat when I am out there. I can get the air up to a nice toasty 72 degrees or more pretty quickly, but anything with any mass is still ice cold and stays that way for a long time. While the air is warm, you can literally feel the cold from the walls. The sauna, while not in an unheated space is similar. It takes a long time for it to totally warm up. Until than it is kind of a hollow warmth. Hard to describe. A remote turn on would be nice as would a timer to remind you in a few hours that it is good to go, and also having some semblance of a “standby” mode that is not quite sauna hot but is also not room temperature cool. I would always have some kind of simple mechanical thermal cut on in series with the heater though. I like electronics as much as the next guy, but they can fail. Even a simple klixon switch with a beefy relay would offer you protection if something went wrong. I want to make a similar gizmo for keeping my plumbing from freezing and we are not a good candidate for heat tape, and one of the thing I will have in the system is a simple mechanical safety in series with the heater. I think having the wifi remote is cool. It just needs to have some safety features included.

  4. Hey guys, that’s my sauna. The main reason I did this, was to actually have a hot sauna when I was ready to go outside. Problem is, that here in the US saunas must shut off after 1hr operation. But here in Chicago it can take well over an hour to get sauna hot. I added the auto off, in the event I forget to turn it off, which has happened a few times. Mine is set to auto off 1hr after the set temperature has been reached. As for fire risk, don’t see how, it will never get hot enough for the wood to combust and if you follow all manufactures guidelines for set backs, then nothing can burn. Also, the original limit switch is still inline with the wifi controller, so if it got hotter than manufactures specification, the limit switch would kill it till reset is pressed. So again, no fire risk. That was why the manufacturer of Harvia/Heavenly Saunas interviewed me. I believe they want to implement this themselves, just didn’t have the right idea of how to go about it. I shared it all with them before I posted to git. Anyhow, hope you guys enjoyed the hack, I know I am almost every day ;)

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.