Viessmann API binding

…and that was the issue, thank you.

I was running 3.2.0. Upgrading to 3.4.0 solved the problem and all is now well and reading as expected.

Thank you once again.

Hi Nadalio,

I think this might be related to the way OpenHAB manages item state. I suspect the relevant bit of info is here:
https://www.openhab.org/docs/developer/bindings/thing-xml.html#auto-update-policies

The binding uses default auto update policy for all channels - generally speaking it doesn’t make any assumptions about

what sending a command via a write-only channel does. It will send the command immediately from such a write-only channel, however it doesn’t update the

corresponding state of any associated readable channels until the next polling cycle. OpenHAB using the default auto update policy will try and set the state of the write-only
channel but doesn’t know about the other DHW channels so can’t update those.

You should be able to confirm that the command is sent immediately from the Vicare app if it shows the status.

As the read-only command channels are never updated by the binding, they will just reflect whatever the last thing written by OpenHAB was.

Thank you. Works fine!

You are right, the update is sent immediately. Also it does not matter when “Deactivate DHW One Time Charge” stays on “ON”, because when setting the command to ON again it will sent the command again anyway.

Is there also a command to set the DHW-temperature? I did not see any.

I have finally gotten round to upgrading to 3.4.0 and with the latest 3.3.6 version of the binding it’s working fine. However I don’t think I’ve done anything specific in the latest version to make it work.

Thank you for answering-

Therefore I suspect that it’s something to do with your upgrade process. What kind of OpenHAB installation do you have (OpenHABian/docker/linux?) and what was your upgrade process?

I have a Debian 11 VM with openhabian installed so the upgrade went through the package upgrade process.

It sounds to me like you don’t have the binding installed. If the karaf install was completely rebuilt during the update, I don’t think you will have the binding present as it’s a marketplace binding and not part of the standard install.

I de-installed the binding several times without any outcome. Lastly I de-installed the binding and forced the removing of the things. Now I have 3.3.6 installed and the API is online, the autodiscovered thing failed to initiaze and I cant add a thing manually:

Update: I looked at the wrong place for my setup and now I have everything running.

Hi,

Did you create the heating thing through the UI by adding it from your inbox, or from a config file? It seems that the binding can’t find the hidden deviceUniqueId property in the heating device. This is populated by the binding by discovering it via the Viessmann API when it’s created from the inbox, and for this reason it’s not supported to create Things other than by adding the discovered items. When you say the autodiscovered thing failed to initialize, was it created or did it just not appear?

If you have it, it will be called DHW Target Temperature aka heating_dhw_temperature_main. It should be possible to set it, you will need to change the default UI control type OpenHAB uses by setting the ui widget metadata, as by default it will just present them all as a number.

Thanks, it works out of the box:

events.sendCommand("ViessmannVitodens200_DHWTargetTemperature", 29);

Hi and thanks a lot for your support and effort.
It is now working well!

Anyone an Idea? @rtuck99 maybe? Edit: Nevermind, after updating from 3.3.5 to 3.3.6 it started working!

1 Like

Hello seems I am missing the temperature sensor from the viessmann thermostat which connected to my boiler.
I can see it in the json so I think it might be due to the above disussion.

{
“properties”: {
“value”: {
“type”: “number”,
“value”: 19.1,
“unit”: “celsius”
},
“status”: {
“type”: “string”,
“value”: “connected”
}
},
“commands”: {},
“apiVersion”: 1,
“uri”: “https://api.viessmann.com/iot/v1/equipment/installations/76813/gateways/123/devices/0/features/heating.circuits.0.sensors.temperature.room”,
“gatewayId”: “123”,
“feature”: “heating.circuits.0.sensors.temperature.room”,
“timestamp”: “2023-01-16T14:08:02.962Z”,
“isEnabled”: true,
“isReady”: true,
“deviceId”: “0”
},

Do you need the whole json or just the above snippet?

Seems this is already on the list for release 3.4.0 according to GitHub so I will wait for that and test when it is released. Thanks!

Hey ho, so i am a newbie. i read the binding docs and this topic but i didnt find my mistake.

i try http: and https:



hopefully
dicous

i read the binding docs and this topic but i didnt find my mistake.

First: try without Google reCAPTCHA (switch off)
And the Redirect URL:
http://xxx.xxx.xxx.xxx:port/vicare/authCode

Unfortunately didn’t work. I will try all variants again at the weekend =/

thank u

Are you behind a reverse proxy such as nginx that does your https? If so you should ensure that X-Forwarded-Host/Proto/Port headers are appropriately set on the requests forwarded to OpenHAB