thomasgermain / vaillant-component

Multimatic integration for Home Assistant (also compatible with sensoAPP)
MIT License
136 stars 24 forks source link

Senso app integration #43

Closed youngwebs closed 3 years ago

youngwebs commented 3 years ago

I am able to test with senso app and VR921 and tried this pre-release:

Unfortunate after providing the login-in information the integration fails to load:

No 'version' key in the manifest file for custom integration 'multimatic'. As of Home Assistant 2021.6, this integration will no longer be loaded. Please report this to the maintainer of 'multimatic'
9:48:03 PM – (WARNING) loader.py
You are using a custom integration multimatic which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
9:48:03 PM – (WARNING) loader.py
Setup failed for vaillant: Integration not found.
9:48:02 PM – (ERROR) setup.py

Hope this helps troubleshooting further?!

thomasgermain commented 3 years ago

Hmm seems I messed up with a commit for the version in the manifest. I'll fix that in b8 (anyway this is just a warning).

Are you migrating from 1.4.0 ? It sounds you had vaillant integration before -> Setup failed for vaillant: Integration not found.

youngwebs commented 3 years ago

yeah, just found out that i needed to

  1. disable the integration 1.4.0
  2. delete the integration AND reboot the HOMEAS core
  3. install the new version. Now I did get the new login options

proceeded a lot further, but no entities found and this error in the log:

2021-04-12 22:08:07 ERROR (MainThread) [custom_components.multimatic.hub] Unexpected error fetching multimatic data: 'TIME_CONTROLLED'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 173, in _async_refresh
    self.data = await self._async_update_data()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 143, in _async_update_data
    return await self.update_method()
  File "/config/custom_components/multimatic/hub.py", line 106, in _fetch_data
    system = await self._manager.get_system()
  File "/usr/local/lib/python3.8/site-packages/pymultimatic/systemmanager.py", line 106, in get_system
    zones = mapper.map_zones(full_system)
  File "/usr/local/lib/python3.8/site-packages/pymultimatic/model/mapper.py", line 219, in map_zones
    zone = map_zone(raw_zone)
  File "/usr/local/lib/python3.8/site-packages/pymultimatic/model/mapper.py", line 248, in map_zone
    func = _map_function(raw_heating, "setting")
  File "/usr/local/lib/python3.8/site-packages/pymultimatic/model/mapper.py", line 289, in _map_function
    operating_mode = OperatingModes.get(mode)
  File "/usr/local/lib/python3.8/site-packages/pymultimatic/model/mode.py", line 82, in get
    return cls._VALUES[name]
KeyError: 'TIME_CONTROLLED'
2021-04-12 22:08:07 ERROR (MainThread) [homeassistant.components.fan] Error while setting up multimatic platform for fan
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 205, in _async_setup_platform
    await asyncio.shield(task)
  File "/config/custom_components/multimatic/fan.py", line 22, in async_setup_entry
    if hub.data.ventilation:
AttributeError: 'NoneType' object has no attribute 'ventilation'
thomasgermain commented 3 years ago

Ok so, good point is my modification is "working" (I mean, the correct URL is reached when integration is configured with senso app).

Apparently there is a new TIME_CONTROLLED operating mode (As far as I know, it seems to be quite similar to AUTO mode), but I can't test that.

I'm waiting for a senso app user to add some code to handle this new operating mode in the underlying connector (here: https://github.com/thomasgermain/pymultiMATIC). (Once these modifications are done, I still have to do some work in the integration to make it work for multimatic and senso)

So for now, I can't do anything about the error, but I want to thank you for your test :+1:

youngwebs commented 3 years ago

Yes, it works, as it no longer fails during initial start-up on wrong api URL's!!

I can do some basic stuff, but diving in the details of the connector is at this moment a bridge too far. In any case i really thank you for the great work on this, and where i can I will assist. For now i would be happy with just monitoring the system in HA, hopefully i can find a way on how to do that, and will share results if succeeding.

thomasgermain commented 3 years ago

I'm gonna close this one since "MyVaillant" will get released soon for sensoApp user and I do have any way to test that part correctly.