Viessmann Component

The empty input fields issue is being addressed with this PR:

Hopefully will end up in HA Core soon.

Alternatively you can install the custom component from GitHub - oischinger/ha_vicare: Home Assistant component for Viessmann Vitodata service to have working input fields right now.

that was a question to me or Tobias?

After update to 2021.12, did you remove the ViCare component from the YAML configuration file and reboot?

I did not update to 2021.12, I’m still on core-2021.11.5 and I’m trying to add ViCare integration for the first time.

@sidlauskas if you want to setup the component via UI you must have the latest home assistant version. The previous version only supported yaml configuration

1 Like

Thanks for fix.
Unfortunately, i have this error:

Logger: homeassistant.config_entries
Source: components/vicare/__init__.py:134
First occurred: 21:02:26 (1 occurrences)
Last logged: 21:02:26

Error setting up entry ViCare for vicare
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 313, in async_setup
    result = await component.async_setup_entry(hass, self)  # type: ignore
  File "/usr/src/homeassistant/homeassistant/components/vicare/__init__.py", line 98, in async_setup_entry
    await hass.async_add_executor_job(setup_vicare_api, hass, entry)
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/homeassistant/homeassistant/components/vicare/__init__.py", line 134, in setup_vicare_api
    hass.data[DOMAIN][entry.entry_id][VICARE_CIRCUITS] = hass.data[DOMAIN][
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareDevice.py", line 36, in circuits
    return list([self.getCircuit(x) for x in self.getAvailableCircuits()])
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareUtils.py", line 45, in feature_flag_wrapper
    return wrapper(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareUtils.py", line 38, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareDevice.py", line 265, in getAvailableCircuits
    return self.service.getProperty("heating.circuits")["properties"]["enabled"]["value"]
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareCachedService.py", line 24, in getProperty
    data = self.__get_or_update_cache()
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareCachedService.py", line 36, in __get_or_update_cache
    data = self.fetch_all_features()
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareService.py", line 56, in fetch_all_features
    return self.oauth_manager.get(url)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 41, in get
    self.__handle_server_error(response)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 60, in __handle_server_error
    raise PyViCareInternalServerError(response)
PyViCare.PyViCareUtils.PyViCareInternalServerError: (PyViCareInternalServerError(...), 'Request failed with status code 502 and message "DEVICE_COMMUNICATION_ERROR". ViCare ErrorId: req-cb3b24c375d04e8285c6536671f00d66')

config failed!
Regards,

Alessandro

I managed to make it work. What is interesting about this integration that it doesn’t provide “current room temperature” entity.

Normally it does, in my case it is called: living_room_temperature
But for that you need to have the Vitotrol room regulator (e.g. Vitotrol 300 in my case) to have the room temperature.

At some point today, “HTTP 500 Internal server error” started appearing in my logs (like every 30 minutes?). I restarted Home Assistant (2021.12.0) and now the entire integration failed to setup.

The ViCare app seems to work fine though. Does anybody have similar problems?

Edit: See below.

2021-12-12 21:54:25 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry ViCare for vicare
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 313, in async_setup
    result = await component.async_setup_entry(hass, self)  # type: ignore
  File "/usr/src/homeassistant/homeassistant/components/vicare/__init__.py", line 98, in async_setup_entry
    await hass.async_add_executor_job(setup_vicare_api, hass, entry)
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/homeassistant/homeassistant/components/vicare/__init__.py", line 134, in setup_vicare_api
    hass.data[DOMAIN][entry.entry_id][VICARE_CIRCUITS] = hass.data[DOMAIN][
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareDevice.py", line 36, in circuits
    return list([self.getCircuit(x) for x in self.getAvailableCircuits()])
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareUtils.py", line 45, in feature_flag_wrapper
    return wrapper(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareUtils.py", line 38, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareDevice.py", line 265, in getAvailableCircuits
    return self.service.getProperty("heating.circuits")["properties"]["enabled"]["value"]
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareCachedService.py", line 24, in getProperty
    data = self.__get_or_update_cache()
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareCachedService.py", line 36, in __get_or_update_cache
    data = self.fetch_all_features()
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareService.py", line 56, in fetch_all_features
    return self.oauth_manager.get(url)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 41, in get
    self.__handle_server_error(response)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 60, in __handle_server_error
    raise PyViCareInternalServerError(response)
PyViCare.PyViCareUtils.PyViCareInternalServerError: (PyViCareInternalServerError(...), 'Request failed with status code 500 and message "Internal server error". ViCare ErrorId: req-censored')

Edit: Seems to work after another restart now?
Edit 2:
Now getting this for the circulation pumps:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 487, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 691, in async_device_update
    raise exc
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/homeassistant/homeassistant/components/vicare/binary_sensor.py", line 196, in update
    self._state = self.entity_description.value_getter(self._api)
  File "/usr/src/homeassistant/homeassistant/components/vicare/binary_sensor.py", line 44, in <lambda>
    value_getter=lambda api: api.getCirculationPumpActive(),
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareUtils.py", line 45, in feature_flag_wrapper
    return wrapper(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareUtils.py", line 38, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareDevice.py", line 455, in getCirculationPumpActive
    status = self.service.getProperty(f"heating.circuits.{self.circuit}.circulation.pump")[
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareCachedService.py", line 24, in getProperty
    data = self.__get_or_update_cache()
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareCachedService.py", line 36, in __get_or_update_cache
    data = self.fetch_all_features()
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareService.py", line 56, in fetch_all_features
    return self.oauth_manager.get(url)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 41, in get
    self.__handle_server_error(response)
  File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 60, in __handle_server_error
    raise PyViCareInternalServerError(response)
PyViCare.PyViCareUtils.PyViCareInternalServerError: (PyViCareInternalServerError(...), 'Request failed with status code 500 and message "Internal server error". ViCare ErrorId: req-censored')

Yes, I have Vitotrol room regulator and I can see the room temperature in their application (Vicare), but not in this integration.

For all Viessmann Vitodens-100W (or similar) users - I added gas and power consumption methods in oischinger version of ha-vicare in pull request in github. @oischinger could you check that and share to main home assistant vicare addon?

2 Likes

I do very often get Error: (PyViCareCommandError(
), ‘Command failed with status code 502. Reason given was: COMMAND_NOT_FOUND’)
A reboot of HA can solve the issue sometimes. Many times a automation can run once and then fail with the same issue.

Question is do you use the newest version of ViCare? Which Viessmann equipment / hardware you use?
Which version did you installed? Original from configuration.yaml or custom component from Oischinger (ha_vicare from github)?

I have a vitocal 222-S and a Vitoconnect. Uppgraded to latest version yesterday. Removed the old vicare-connection and added it manually through integrations.

What should I do if adding the new ViCare integration says “Aborted”?
Before I used to have it set up via configuration.yaml. Now, after updating to 2021.12.02 (I was very looking forward to it) I liked to set it up again.

Feels somehow strange. How can I re-install the whole ViCare thing?

Hey, yesterday on the vicare app they displayed an info about serwer works, today on the app the info i have is (your viessmann cant connect to wifi) *in my router I see that it stays connected. Do you guys have same problem after the vicare app update?

I have just updated the app and all works ok. In the past occasionally the vitoconnect module required restart (power cycle) to get it connected back to Viessmann servers.

Same here. I cannot connect the Vitoconnect 100 Opto1 to my router anymore.

I use newest vitodens 100. I re configured the wifi in the boiler and on the end point vitodens says e-12 error which means ( server error) :roll_eyes:

I just received a message from V:

Hi, we have some issues with our cloud servers and are currently trying to fix the error. I will give you an information as soon as the problem is resolved.
Best regards, Chris

1 Like