Integration of HUUM UKU Wifi

The first beta of 2024.2 has been released. Feel free to try out the Huum integration there for people willing to try out the beta channel :slight_smile:

1 Like

Hi frwickst,
Thanks a lot for the Huum integration. It was a long journey and I am super excited to finally this native integration.

So far so good for this first day of test :slight_smile:

Is there a reason why you didn’t integrate the light switch?
If it’s not because of a limitation, I will have a look and try to add it myself.

Again congrats and thank you :pray:t2:

@abibouba
There are two reasons for not implementing anything but the sauna heater.

  1. All new integrations that are added to HA should try to add only a single entity type, in this case “climate”. So adding anything else would most like have ended up being rejected. Now that the integration is added, now we can start adding extra features.

  2. I don’t have a light nor is there a public API that I know of that can be used for changing it’s status.

1 Like

@frwickst OK thanks for your reply

  1. Clear :slight_smile:

  2. I use the following endpoint to toggle the light:

https://api.huum.eu/action/home/light

Difficulty is that there is only an endpoint to toggle the light, and you cannot force a turn on or a turn off.

‘Status’ endpoint has an attribute ‘light’ to get the status. 0 is off, 1 is on.

I like it so far…

Haven’t scraped my old setup yet, but looking forward to some “extras” added in here.

REF: https://huumsauna.com/wp-content/uploads/2022/05/h200402l03_v1_uku_4_1_user_manual_usa_2023_print.pdf

Options - ENHANCEMENTS:

  • ADD: door sensor (open/shut)
  • ADD: ventilation / light (on/off)

I run 2x internal fans (AC Infinity) rated for high temps to circulate air… these are installed under the seats (https://www.amazon.com/gp/product/B009P0R6VC)
To power them on I use light switch function from the huum app or use the rest api from the old setup in HA. The same circuit in the UKU energizes a Himalayan salt stone inside the sauna.

Here is the api URI for status, which shows the lights
https://api.huum.eu/action/home/status
The config: line has 1 (steamer configured), 2 (lights configured), 3 (both are configured)
GET - api.huum.eu/action/home/status - returns your current sauna status
image

This toggles the lights on/off
https://api.huum.eu/action/home/light
GET - api.huum.eu/action/home/light - switches the light
image

Just expanding on what was posted here… horemansp/HUUM: HUUM Sauna controller (github.com)

UPDATE: Took my Furnance card and modified it for this… Still tweaking it here and there. Wish I knew how to create gifs to show animation. The fan spins and the radiator pulses when they are active. I also have colors and icons updating when on/off
image

Old Card (might still see about using the restriction part to act as parental control)
image

I’ve noticed the door sensor severely lags in the API, the only way I could get it to reset was to turn the sauna off and back on so this is making the door sensor hard to use.

This, of course is using the old method, so hoping the integration can speed this call up?

Finally got to use my sauna with this new integration and noticed when trying to dial in a temperature on mobile or web browser/app it does not like certain temperature numeric values. I believe this is a conversion error from Fahrenheit to Celsius, and what the sauna will accept.

If I select 176, that works fine, because the number rounds evenly in Celsius

Example: These temps would not throw an error, anything in between does.
176F = 80C
167F = 75C
158F = 70C

Alright, thanks for reporting this, I did not take Farenheit into account properly it seems, I’ll see what changes I could do. That error is from the PyHuum python package so I will try to update that. Still a bit strange that even F->C values are fine as I would have expected those to fail as well actually. Oh well, I’ll look into this next week, I’m on vacation atm.

1 Like

Anyone else experiencing the problem where if you schedule sauna heater via Huum’s own app, then next refresh in HA cancels that session?

Steps to reproduce:

  1. Schedule heater via Huum app (in particular used iOS)
  2. Open HA (e.g. on iOS) —> scheduled session gets cancelled.

Once I disabled the integration, scheduled session properly remained.

interesting find, although I use HA as the primary means to activating my sauna session over HUUM app for ease of use among family members (since they do not have HUUM accounts to use the app).

I agree the two should be able to co-exist, it could be a race condition on the api ?

Unsure if this is relevant to this thread (I can remove if needed).
Received an email this morning for an upcoming firmware to the HUUM. Posting this because it will prompt a re-test of the new HA integration. This is the 2nd firmware update I have seen since owning my HUUM Drop 4.5 in the past 3 years.

Dear sauna fan,

In a couple of days, we will send a firmware update to Your sauna control unit, incorporating an advanced heating algorithm to make the sauna experience even more enjoyable and alleviate concerns that may arise from certain structural peculiarities in less-than-ideal sauna designs.

This update aims to
- optimize the heating
- prolong the heater lifespan
- address any challenges related to certain structural nuances in sauna designs that may affect heating performance
- create a more secure and enjoyable sauna environment by optimizing the heating cycles and ensuring user safety
Here’s a brief overview of the new heating algorithm and instructions on how to deactivate it if required:

Optimized Heating Cycles:
• The first heating phase lasts 90 minutes, followed by a 10-minute break. After that, another 10-minute break happens, but the heater will reactivate if the temperature drops by more than 10°C during the break.
• The second heating phase lasts 45 minutes, followed by a 10-minute break. After that, another 5-minute break happens, but the heater will reactivate if the temperature drops by more than 10°C during the break.
• If the desired temperature is not achieved after this, the second phase will repeat. The cycle ends when the desired temperature is reached.

Safety First:

For safety reasons, the system will now turn off the heater if the sauna temperature hasn’t increased by 30°C within the first hour. This feature helps prevent issues stemming from doors or windows left open. These changes are designed to enhance safety in saunas and minimize the risk of heating an inadequately insulated or incorrectly constructed room, disregarding the manual’s instructions.

After You have received the firmware update in a couple of days and You prefer to continue using the old heating algorithm, please follow these steps within the user interface settings:

• Press and hold the button for about 10 seconds to access the settings. Initially, you will reach the timer - continue holding the button until you enter the settings menu.
• Select “Safety settings” from the menu.
• Choose “Failure det” and confirm the structural aspects of the sauna.
• Repeat the same confirmation process under the “Pauses” menu.
• Both settings will change to “Off,” indicating the use of the old heating algorithm.
• The “Failure det” setting checks if the sauna temperature has not increased by 30°C during the first 60 minutes.
• The “Pauses” setting controls the pause logic described above.

It is crucial to emphasize that a well-insulated sauna with proper ventilation, the right dimensions, and the correct heater setup is essential for a safe and enjoyable sauna experience. For any questions or additional guidance, please visit our homepage for informative articles.

ATTENTION: In some cases, the display unit may show “Downloading update” for more than 30 minutes. If this occurs, please follow these steps:
• Switch off the main power to UKU for about 30 seconds.
• Switch it back on, and the update should finalize, restoring normal functionality.

Please do not disconnect the power while “Updating” is displayed.
Thank You for choosing HUUM as your sauna partner. We are here to support You every step of the way.

HUUM technical support

@reindeer I might have an explanation for this. To get the full status of the sauna, it calls the “Stop” API. As you have a schedule on, the stop API might cancel that as well. The reason for calling stop to get the full status when the sauna is not on, can be found here GitHub - frwickst/pyhuum: Python library for controlling Huum saunas . I did not expect this side-effect however, so I can investigate further and contact Huum to see if they could do something about this. I’m already in talks with them in the hopes of getting a bit better API in the near future…

2 Likes

Thanks so much! Indeed - seems to be the root cause.

Oh just found this Integration thats great!!

Currently I was using http requests in NodeRed to start/end the Sauna and to inform with text to voice in Alexa on the current temperature while heating up (e.g. at 50, 60 and 70 degree). The code is currently a bit of a hack also with slight bugs like informing 3 times in a row it is at 50 degree (depending on the outside temperature/speed of heating up).

With the new integration I guess I can make it more robust!
Is it correct to use in Node Red the “climate” domain and “set temperature” and then “turn on”?
Since it is just one endpoint how would I read the current temperature in Node Red?

Thanks already for this integration!!

NoTechi

Hello. Last year I hacked your previously declined HA integration into my Home Assistant setup, and can also confirm that it, at some point, had this same issue. It was especially bad in the summer, when Huum had some server issues (or were rate limiting?), and it became pretty much impossible to get the heater to turn on from the app. The requests were extremely slow and often got cancelled.

I saw this “call stop before querying” behaviour in the source code, but I still figured that the incomplete integration and my installation of it was to blame, so I disabled it instead of investigating further or contacting you.

An update about my experience with the integration. After about a week the API calls to my heater became extremely slow, and turning on the heater would fail (probably due to the stop call sent before getting full data). Soon after disabling the integration the slowness stopped, and calls from the mobile app again happen virtually instantly.

This leads me to believe that either the Huum API is throttling request somehow (due to the integration polling the API too often) or the local head unit somehow getting overwhelmed by the requests.

Thank you for the insight, I will contract Huums technical staff and ask what could be causing the slowness.
I have been trying (albeit not as much I would have liked) to find a solution to not calling the stop command. At the moment I have just not come up with a solution that would still allow for getting the target temperature for the sauna when it is not on. But I really hope that Huum will stand by what they told me and that they will be developing their APIs further in the very near future. When that happens I will jump on the new APIs asap at least.

Huum did release revamped application. I wonder if anything also changed on the backend side so current concerns related to calling ‘stop’ can be now mitigated?

I’m looking for a device to control the sauna that can be used local. As far as I can see, local control isn’t supported, correct?

Local control is not supported and all communication happens over Huums API, correct