Høiax Connected smart water heaters

FYI

I see that my heater is updated to 1.5.10 now.

Yes, it was rolled out today. I hope this resolves everything :slight_smile:

I have a brand new 200L Connected. I had some issues pairing it with MyUplink, but that was solved using an old iOS device (Currently it’s impossible to pair using iOS >15.x and iPadOS > 15.6)

However - after adding it to Homey I get that I “accumulated heat loss” of 22419.78 kWh (!)
It was turned on for the first time yesterday… Can I reset this value somehow?

You know, nuclear reactors should be filled with heavy water, not spring water. :rofl:

Jokes aside, I will add a maintenance action to the next version so you can reset it.

…and I have reproduced your error. Turns out that I introduced this problem on July 20th 12:14 PM. This means that everyone that has connected the tank to homey since then has the same problem, it’s just that you’re the first to mention it :joy:

… which means that I need to add corrective measures to all the unlucky users to have connected their tank between then and now.

A new version will be available later this evening.

Fixed in version 1.7.11. The test version will probably not pass Athoms review before Monday though.

1 Like

Thanks for the quick fix! :slight_smile:

Now I have an other question - This looks a bit strange:

For some reason the stored energy “In tank” does not go down below 10.87kWh even though the temperature is dropping.
It was like that yesterday and the same thing happens today.

Indeed, but I cannot explain exactly this value because I am just exposing the value that myuplink is returning. Høiax has not made public their exact formula for calculating this value, but at least it is a very rough estimate based on a couple of parameters you have configured:

  • Water inlet temperature
  • Max water flow
  • Measured temperature
  • Used energy
  • +++ ?

What I think is going on though is that since the measured temperature is at the inlet it is dropping much faster than the average tank temperature. So if the temperature at the inlet is dropping faster then water is tapped, if it is dropping slower it is not being tapped but just “stabilizing” the temperature within the tank. Thus they can estimate how much water was tapped between these two times by using the “max water flow” setting. And as such calculate a cap on how much energy was tapped.

I see now that the value does indeed come from MyUplink… Thx for checking!

No one has actually been using the tank since it was installed so water inlet temp. should not be an issue.

10.87kWh does seem to be some sort of magic number for my tank at least:


It has not been lower since I got it online.

…also - It is now heating, but Homey shows it as “off”:

Changing the power level between low, medium and maximum does not appear to do anything - It keeps running at max regardless of setting.

I can change the power level in MyUplink, but it takes quite long to reflect back into Homey (I assume due to polling limitations?)

I deliberately made the app with the idea that if you choose to connect it to Homey then Homey will be the ONLY controller of the water heater. Thus, I did not add a lot of polling to make sure that the internal state of the homey app is in synch with the myuplink state. So… if the state of the homey app is Off and you have turned the heater on with myuplink then the app will not transmit the power to the tank before you turn it on in the app.

Of course, I can add a lot of polling if you wish, but in my personal opinion, this is a waste of bandwidth and internet resources.

I completely respect that decision! (Polling every 5 minutes(?) like it is now also quite ok for what it is I think)

…but changing the power level in Homey does not actually change the power level on my tank.
I have not turned it on or off using MyUplink, I just tried changing the the power level to see what would happen.

Yes, but you also said that

If homey thinks it is off, then the change in power level is not transmitted before it is turned on again in the app.
Then the question is what turned it on on the myuplink side. If you did not do it then maybe myuplink did it by itself. Can you confirm that the controlling unit of the tank is set to Homey (or external if you see it from myuplink?)
If myuplink is selected as the controlling unit then I see a need for more polling. I can add more polling for these cases though as it makes more sense when external changes are expected.

OK - Currently I have it configured as “Independent (Spotprice)” in Homey and “Spotprice” in MyUplink. (Yes - I did see your warning that I should rather use “Piggy Bank” to control it. That is however a bit to “involved” for me at the moment)
I wanted to start with the default Høiax functionality to see how far that gets me.
Does configuring it this way mean that I can’t change anything from Homey? (That would certainly make sense…)

You’re not the first to state that, so I am trying to simplify the process as much as possible, it will be a bit easier within the next two weeks I hope.

You can change things from Homey still, the question is how long the change sticks :wink:
For spotprice I think changing the temperature will stick (as a base temperature) as myuplink only have delta-temperatures for high and low price points.
Some other values can still be useful as well, if you input the room-temperature to the homey app this will improve the estimates done by the tank itself about how much energy it has.

Hi,

I have been using the Høiax app for some months and now for the secound time it lost connection to the water heater with the error: [OAuth2Error] Error: Missing Token.

When i re-enter the credntials it works again but now that it happen twice i expect it to happen again at some point and that feels very unreliable. I’m not sure but it migth seem like the token times out or somthing after a very long time.

Have anyone seen the same behaviour or know how to prevent it from happening?

Thanks in advance for any suggestions.

I saw it last time 2 months ago. And believe me, if I knew a way to avoid this I would have made appropriate counter measures to avoid it from happening. Luckilly it doesn’t happen too often, but still annoying when it does.

Unfortunately I do not know the exact reason it is happening, but I did another effort to ask in the Homey developer slack channel right now to see if someone else knows if there is anything smart I can do to update the app or make me understand the problem better.

Apart from that I have not focused much on this app for a while. I know I should add support for the new 250 liter tank and an expansion kit for older tanks but nobody asked for it yet so I have not given it much traction. Does anyone need this yet?

So I have looked a little more into the details.

According to the API documentation the authentication has two kinds of tokens, an access token and a refresh token. The access token is used for every request and has a lifetime of 1 hour and is refreshed on the fly before it expire.

The refresh token has a lifetime of one year and must be used to get a new access token in case you did not request a new one within the 1 hour limit. The refresh token is a one time use only but will also provide a new refresh token.

So… I suspect that the access token is the only one that is being used by the oAuth2 homey API and that the refresh token is somehow not handled correctly. The homey API has some functions that should be overloaded in case of events like this. I guess this is the piece I am missing. I will look into this when I get a little bit more time, currently I am swamped, but at least I have a good indication of what is wrong and where to look now.

Someone sent me a diagnostics report yesterday. I would like to get some more information about this issue. Did it resolve for you?

I just sent out a new version of the app, 1.7.13. I believe this should resolve the occasional connection issues, or at least reduce them to a minimum. Fingers crossed that it is working; we’ll see in a month or two… If it doesn’t then please let me know.

1 Like

Hi @frodeheg

I am really satisfied with the Høiax app which I use at my cabin.

Since you have made this based on the Myuplink web UI, is there any change you would be able to help also making a Nibe app (Myuplink) that would be fantastic. Is there any possibility that the Høiax basis programming can be reused and adapted ? I would be happy to support, but do not have any experience with programming yet… I have a Nibe VVM S320 (S-series)