fustom / ariston-remotethermo-home-assistant-v3

Ariston NET remotethermo integration for Home Assistant based on API
MIT License
157 stars 37 forks source link

Ariston Lydos support #216

Closed mihaimdinca closed 9 months ago

mihaimdinca commented 1 year ago

Is it possible to add Ariston Lydos electric water heater support? The integration detects the device but the setup fails and no entities are created. A while ago (not sure exactly when, months ago), the integration would create some entities, not all were working but some did. It would be nice if this device was supported.

Khaossa commented 10 months ago

Yeah, I have as well Lydos Hybrid and there are so few entities and the most of them info entities, before I had Velis and been more basic product has a lot of and more usefull entities

entities:

seba1337 commented 10 months ago

I get the following error:

Logger: ariston Source: /usr/local/lib/python3.11/site-packages/ariston/init.py:118 First occurred: 09:57:55 (1 occurrences) Last logged: 09:57:55

Unsupported whe type 3 NoneType: None

It detects the name of my water heater, doesn't add any entities (I think?), says Failed to set up.

seba1337 commented 10 months ago

Forgot to add that it works though with https://github.com/chomupashchuk/ariston-aqua-remotethermo-home-assistant

vwlad commented 10 months ago

It was working on earlier versions but now i got same error for lydos. Aqua- Remotethermo works but i dont have switch for on/off.

otto-tamas commented 9 months ago

Support for Lydos is missing in python ariston api. I created this issue:

https://github.com/fustom/python-ariston-api/issues/117

As a quick fix on my home assistant, I patched the ariston api lib in the custom component __init__.py. This worked for me:

"""The Ariston integration."""
from __future__ import annotations

# Add lines below
def add_lydos_support():
    import ariston
    ariston._MAP_WHE_TYPES_TO_CLASS[3] = ariston.AristonEvoDevice

    from enum import unique, Enum

    @unique
    class WheType(Enum):
        """Whe type enum"""

        Unknown = -1
        Evo = 1
        LydosHybrid = 2
        Lydos = 3
        NuosSplit = 4
        Andris2 = 5
        Evo2 = 6
        Lux2 = 7
        Lux = 8

    from ariston import device
    device.WheType = WheType

    from . import entity
    entity.WheType = WheType

add_lydos_support()
ZsBT commented 9 months ago

I also have a Lydos Wifi (WheType=3), the above works for me. What I miss is the "Time Left to Heat" info, I'll try to find how to get it.

seba1337 commented 9 months ago

I also have a Lydos Wifi (WheType=3), the above works for me. What I miss is the "Time Left to Heat" info, I'll try to find how to get it.

You can calculate that from ΔT (set temperature - current temperature, for ex. 10 K), P heater power in kW (for ex. 1,8 kW), V volume of the water heater (in liters, for ex. 80 L) and cp (4,18 kJ/(kg K)). assuming ρ = 1 kg/L (density of water), you have time (t) in seconds = cp ΔT V ρ / P, for ex. t = 4,18 kJ/(kg K) 10 K 80 L 1 kg/L / 1,8 kW = 1858 s = 31 min.

fustom commented 9 months ago

Done.