Viessmann Component

My impression of Viessmann is that they are in fact a quality supplier but with some major drawbacks re open data. They behave very closed source towards their end users. This affects all aspects, from access to planning information down to publishing informations about their bus protocols and data endpoints.

Surely some of this will stem from the fact that uninformed end users can do all sorts of harm to their installation. The same users may then try to open support cases and warranty claims when things stop working.

Another aspect seems to be that Viessmann heavily tries to signal to their craftsmen that they always keep them in the loop. Craftsmen are probably the largest multipliers for Viessmann sales, so they keep them happy at all costs.

Amongst such major goals the group of interested smart home users does not (yet) play any important roll. We are currently negligible compared to their classic user base.

But still: All in all I do not regret my choice of Viessmann for our heating and ventilation systems. They sell good systems with sound engineering. But I admit I had my moments when I started researching about other suppliers and their data politics.

IMHO the current strategy of Viessmann is a rather faint hearted approach towards the future. Thinking publicly of charging for their cloud API without opening a cost free non-cloud option will definitely not convince any smart home users. We need to integrate a dozen suppliers in our homes. I gladly pay €5 a month to Nabu Casa for helping me with this integration nightmare on the top level. But I will not pay to each system supplier in my home. Not to a single one off them actually. Sorry.

3 Likes

It’s really unfortunate that there is no local access provided and their cloud services are on the way to monetization and unreliability.
We should spend our efforts on hacking their connectivity modules instead I fear.

4 Likes

That is a great idea, do you do it just on an entity becoming unavailable basis or somehow differently?

The way to go here would probably be there Modbus protocol that is used by Viessmann between the WO1C control unit and its satellites. It is also used by smaller control units like the LB1 used for ventilation.

I have asked Viessmann support in their forum for a data point list with description of registers and bits but they denied my request.
IMHO it is extremely difficult to build such a list by reverse engineering.

Yepp, exactly like that. For each cloud service I pick a single representative entity and monitor it.

1 Like

Some newer heaters have implemented the OpenTherm interface for connecting with internet modules or controllers. As far as I have seen there are some universal OpenTherm modules out there but I’m not sure if it is possible to control Viessmann heaters with it. I have not dug into details of it though. Any ideas? This one has a standard integration with HA:
http://otgw.tclcode.com/

AFAIK Viessmann has used OpenTherm in some of their older systems. It is possible that they still use it on some Vitodens gas boilers. But in my Vitovent 300-W ventilation system from 2017 they switched to Modbus. Only older Vitovents still used OpenTherm. So to me it looks like OpenTherm is a dieing protocol on Viessmann systems.

The information is not very clear on their website, I’ve found description of the Vitoconnect OT2 interface, in Polish it says:
“Vitoconnect OT2 is compatible with all new Viessmann heaters with an OpenTherm interface manufactured after October 2017 and additionally in the following models: ● Vitodens 1xx W (WB1B, WB1C, B1HA, B1KA, B1LA, B1LB, B1HC, B1KC, B1LD ) ● Vitodens 050-W (BPJC, BPJD)”
But on English site it says:
“Vitoconnect OT2 is for the remote control of the Vitodens 100 range of boilers using the ViCare App on your smart phone or mobile device.
The following types of boilers are supported:
Vitodens 050-W (BPJC, BPJD)
Vitodens 100-W (WB1B, WB1C, B1HA, B1KA, B1HC, B1KC)
Vitodens 111-W (B1LA, B1LB, B1LD)”
Is there somewhere a specification of which boiler has an OpenTherm interface?

Hi,
I have a Vitocal heatpump and the integration is working like a charm :slight_smile:
Are there any attributes to read out the current compressor capacity and the current power consumption?

in Developer tools / states, entity column : filter on vicare This should display all exposed sensors.

Hi Tommmii,
I already checked this. Unfortunately the compressor capacity is not included :frowning:

When trying to change to “Comfort” mode I get an error, same with Eco mode:

2021-12-23 11:42:41 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140344949958688] (PyViCareCommandError(...), 'Command failed with status code 502. Reason given was: COMMAND_NOT_FOUND') Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 185, in handle_call_service await hass.services.async_call( File "/usr/src/homeassistant/homeassistant/core.py", line 1495, in async_call task.result() File "/usr/src/homeassistant/homeassistant/core.py", line 1530, in _execute_service await handler.job.target(service_call) File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 209, in handle_service await self.hass.helpers.service.entity_service_call( File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 663, in entity_service_call future.result() # pop exception if have File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 896, in async_request_call await coro File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 700, in _handle_entity_call await result File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 486, in async_set_preset_mode await self.hass.async_add_executor_job(self.set_preset_mode, preset_mode) 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/climate.py", line 330, in set_preset_mode self._circuit.deactivateProgram(self._current_program) File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareDevice.py", line 399, in deactivateProgram return self.service.setProperty(f"heating.circuits.{self.circuit}.operating.programs.{program}", "deactivate", {}) File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareCachedService.py", line 29, in setProperty response = super().setProperty(property_name, action, data) File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareService.py", line 52, in setProperty return self.oauth_manager.post(url, post_data) File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 91, in post self.__handle_command_error(response) File "/usr/local/lib/python3.9/site-packages/PyViCare/PyViCareAbstractOAuthManager.py", line 67, in __handle_command_error raise PyViCareCommandError(response) PyViCare.PyViCareUtils.PyViCareCommandError: (PyViCareCommandError(...), 'Command failed with status code 502. Reason given was: COMMAND_NOT_FOUND')

Home Assistant 2021.12.4 in docker
Vitodens 222-W boiler.

2 Likes

For some boilers it is not possible to set Eco and Comfort modes via the API. Can you do it via the mobile app?

1 Like

yes… works fin in the app… And the integration also picks it up after some seconds.

@juventinio have you resolve your issue? I have the same problem with 422 error.

Hi there, nice job on the integration and the transition to UI setup with respect to the existing configuration.

Is there an intention to read the solar production, not a PV?
ideally I would like to see this production additionally in the energy management. I think solar (not PV) is missing there at all.

Cheers

image

erm… Translation Error , thankfully the integration functions as before.

1 Like

Where and when exactly did you see this? Wikipedia? Website of NASA?

It’s written right in the screenshot. Since you ask so nicely and without snark, I’ll spell it out for you :

“Set up ViCare Integration.”

Thanks. Now I have a chance to try to reproduce without prior meditation about context.