Controlling Viessmann Vitodens Gas Heater Boilers locally (new models 100-W, 200-W, ... after 2018)

Hi there!

I am an owner of a Viessmann Vitodens 100-W gas heater boiler. It’s working fine, but it’s the only unfortunate device that is controlled via the cloud, and I am only worrying about when Viessman decides to stop supporting it, cutting me off the remote control and HA integration (which now works through vicare integration, working thanks to @oischinger heroic efforts). Viessman already proved themselves being unreliable with the API, making it paid feature if you want more than a handful of requests per minute, the API is pretty terrible, they also reduced precision and update time of the outside temperature meter (discussed e.g. here, like, WTF?), doesn’t support setting modes so I have to hack around it…

I did my research before and knew this, but I just couldn’t find a good gas heater boiler with a reasonable service, price, remote control, and availability in my local area, this was the lesser evil choice.

I found out that quite a few HA users have the same boiler or similar type, and some hint towards being able to control it via other ways (like this one?), but I am unable to find out if it could be supported with my type and setup. I specifically have Vitodens 100w, but I guess the same solution could be working on all Vitodens stuff. The goal I have is to simply control the boiler locally, via having to go to cloud. The minimum I would need is to control the target temperature of the two circuits I have, one for heating and water heater. For efficiency reasons, I don’t want just turn off/on, as the gas boiler works best when it’s modulating it’s output on lower temperatures then just go 100% on. So, my questions:

  1. Has anyone achieve the goal with this or similar Vitodens? If so, how?
  2. Was it thanks to some additional special hardware or firmware?
  3. What protocols have been used? OpenTherm? Some reversed engineered V1/V2?
  4. Do I need to buy some additional control units and hook inside them? Or can I connect directly to the gas boiler?
  5. Does the official app still works after the procedure?
  6. Do I void my waranty by using it?

And so on… I would be willing to sponsor a development of the solution.

Thanks a lot for the help!

I have just switched from the cloud vicare integration to a strictly local esphome component. The component is not final yet and the author is working on making it official in esphome, but you can use it already. Compared to the vicare cloud integration I’m only missing current program information (normal, reduced, comfort etc) - it requires some further development, but all sensor data, all controls are already possible. You can have a look at the documentation here:

at the discussion on it here:

and below is example of my config. My device is Vitodens 200-W:

Here is how it looks like, I’ve used the optolink plug from the original cable but replaced the internals with components as on the esphome document above.

And here is what I’m getting in HA:
image

3 Likes

I’d love to follow in your steps, switching to the hardware interface.
Unfortunately my 222W doesn’t have an optical port. Thanks Viessmann. :poop:

Yeah, exactly :cry: . My newer Vitodens 100-W B1KF (manuals) doesn’t have Optolink.

This is how it looks:

And inside:

Nowhere to hook in…

Does it have opentherm interface?

Maybe. Viessmann documentation is terrible, they call their models always the same (e.g. 100-W) even though it’s a very different boiler from my point of view (like we see in this thread).

In a manual, I could find this:


See the “OpenTherm” interface under D. That is promising. When I opened the boiler, it seems to have these marks there:


Does that mean that to get what we want, we would have to:

  1. get some OpenTherm regulator hardware device (quick search shows e.g. this?)
  2. connect it to this port
  3. use OpenTherm Gateway - Home Assistant to integrate it with HA?

My understanding is that it is a yes answer to all 3 questions. But as I’ve not done it myself you’ll need to confirm with someone that has experience with it, or simply with viessmann support / installer.

BTW, I’ve noticed in the document you’ve shared earlier that if you use OpenTherm the weather control is not working in the built in controller. So I guess that all the logic for heating curve etc. has to be in the opentherm controller.

Very promising.
The official cables aren’t that expensive on ebay and if we have a HA integration and a small board that can be easily purchased (maybe even with the openv self made optolink interface) This will be a lot more useful than vicare.

Yes, I noticed that too, but I don’t think it’s an issue as I found out that e.g. GitHub - arthurrump/esphome-opentherm: Create your own smart modulating thermostat using the OpenTherm component for ESPHome enables to implement it in my own way, basically.

So, for others who are interested, I plan to do this:

  1. buy Master OpenTherm Shield - DIYLESS Electronics - I really just need to control the boiler and don’t plan to combine it with an indoor thermostat. I am now using outside temperature to control the heating (via setting the heating curve). But extending it by an additional indoor temperature seems trivial, you have to just buy another 7$ device above (the thermostat shield)
  2. I will use some ESP8266 device (I prefer nodemcuv2 over Wemos as they use in the examples, but that is irrelevant, both should work just fine) to connect it with those few wires, specifically this way, and then connect the shield to the D connectors on the boiler
    image
  3. Then I will switch the settings on the boiler from whatever there is now to this mode 14: OpenTherm
  4. Will use GitHub - arthurrump/esphome-opentherm: Create your own smart modulating thermostat using the OpenTherm component for ESPHome (by tunning PID sensir) to get something like a heating curve I have now based on outside temperature sensors (which I have) and somehow tweaking it properly (I am not sure on this one)
  5. integrating it simply via ESPHome to home assistant and building a thermostat

It seems that it should support the two circuits: one for heating and one for domestic hot water by default. So we’ll see. If this works, it could mean that one could get rid of vicare without voiding the warranty and for under like 40$, and hopefully not that much time - it seems that I wouldn’t have to write any new code, but mainly just discover what OT interface on my does 100-W provides and then figuring out the good parameters for the heating curve/setpoint.

1 Like

The circuit is so simple that it is an overkill to buy a ready to use one :slight_smile: I’ve made it a bit more sturdy with esp32 goldpin connectors and usb connection to the optolink plug. All soldered to make sure connections are sturdy. Total cost is less than 10 USD/EUR, including the esp32 board. You can also have a 3D printed plug in case you don’t have the original cable.

I have no idea how this works, so not an overkill for me :slight_smile: .

I was referring to @M92718 for the optolink case. 2 resistors and 2 diodes only :slight_smile: Indeed the opentherm is more complicated.

Not everyone is good at fiddling that together and find the proper combination of software components.
I think at least on the second part there is still some room for improvements.

Thanks Hans! Where did you get your optolink addresses from?

I have a Vitodens 111-W B1LF, with an integrated 46l boiler.

  1. ViCare is terrible, fully agree.
  2. Tested it with 2 solutions:
    2.1 Drayton (Schneider) Wiser, both on Floating switching contact connection and OpenTherm. It works very well. Changed it to Tado because my Wiser was only for heating, no control on DHW. Pretty sure the right version of Wiser would have worked very well.
    2.2 Tado V3+ Wirelles kit on OpenTherm. It works well.

However, when connecting on OpenTherm, you have no microcontrol on, for instance, the heating pemperature. It goes to 80 degrees (Celsius), and it stays there no matter what. I would have liked to keep it on, say, 55, and then adapting the timings as such.

ViCare still works, but you can’ really modify anything anymore with it.

In a nutshell, I think having individual TRV’s installed on each radiator, connected for instance on ZigBee or Matter, being piloted by HA which in return connects to the boiler via OpenTherm (ESPHome, since solutions already available) would replace Wiser/Tado and give us full control on the way it works. A bit more works, but full control.

At your disposal, guys, to test further more, if needed.

Basically from this repo:

It is mostly in German but google translate is good enough to find what you need.

Btw, have you managed to make a local integration for you heater? Mine is already 16 years old and might fail severely at some point…

@adorobis : sadly, I’m using the Vicare Integration to automate.
As long as my heater is in warranty period, I’m not prepared to be experimenting on the device.
Certainly not if no one has gotten this working on this specific 222-w model.

Ironically, my 222-w replaced a 12yo heater, which did have Optolink :man_facepalming:

Thanks for info.

Well, I also give a bit of understanding to Viessmann, all new heaters have wifi built-in, so there is no need for optolink anymore.
Also all new ones can be controlled via opentherm controller. But as far as I know there are some limitations to it, e.g. it replaces some built in functionality e.g. it becomes a fixed temperature heating and the heating curve control has to be done by the opentherm controller. Not 100% sure on this though.