home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
74.1k stars 31.1k forks source link

Viessmann ViCare does not behave as expected when setting temperatures and modes #116589

Open x4N70pHyLL opened 7 months ago

x4N70pHyLL commented 7 months ago

The problem

This issue may be related to this one: https://github.com/home-assistant/core/issues/111628

When trying to set temperatures via the ViCare integration, I do get mixed results:

What version of Home Assistant Core has the issue?

core-2024-4-4

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant Container

Integration causing the issue

ViCare

Link to integration documentation on our website

https://www.home-assistant.io/integrations/vicare/

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

home-assistant[bot] commented 7 months ago

Hey there @cfenner, mind taking a look at this issue as it has been labeled with an integration (vicare) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `vicare` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign vicare` Removes the current integration label and assignees on the issue, add the integration domain after the command. - `@home-assistant add-label needs-more-information` Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue. - `@home-assistant remove-label needs-more-information` Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


vicare documentation vicare source (message by IssueLinks)

x4N70pHyLL commented 5 months ago

As there was this https://github.com/home-assistant/core/pull/110924 PR I thought and hoped it is fixed in 2024-06, there is also this statement in the official changelog.

Add ability to change heating programs for heat pumps in ViCare integration ([@CFenner]

However, it does not work for me, it does not seem like anything changed.

If I am setting it on the het pump thermostat, I can switch between "Auto" and "Off" (it has an effect even though it is not shown in HA, it stays at the same setting like it was, but the heat pump does change e.g. to "Auto") The "Sleep" etc on the right side of the thermostat I do get an error when trying to change it ("Error calling the service climate/set_preset_mode. 'vicare_programs'") Using the service vie development tools I can change quite reliably from "Auto" to "Off" and back for my heating circuit. Everything else (dwh/cooling etc) fails with an unknown error.

CFenner commented 5 months ago

Is your heating setup with type auto?

x4N70pHyLL commented 5 months ago

Yes, I activated "heating" mode in Vicare App and that's how it looks like (after reloading the integration as it does not react in sync):

Bildschirmfoto 2024-06-11 um 09 54 16

It always tells me "Error calling service climate/set_preset_mode. 'vicare_programs'" once I try to change the setting (right side). Changing Auto to off and vice versa works most of the time (I can check in the ViCare App) but does not update the entity (or only after quite a time or restarting the integration.

So same behavior than before tis PR https://github.com/home-assistant/core/pull/110924

x4N70pHyLL commented 5 months ago

Sorry to pull this up again, any hints what I could try or how we investigate the issue? I assumed that the feature was intended to enable heat pumps to change program. But I cannot see any difference in the behavior. Maybe you can describe what should work?

CFenner commented 5 months ago

@x4N70pHyLL please share your diagnostic information.

x4N70pHyLL commented 5 months ago

@CFenner config_entry-vicare-362ff0329410f90a890487635b6f5bba.json

Miclot-mth commented 5 months ago

Same problem for me with a "vitodens 200w" boiler, 'set_preset_mode' does not work: "Error calling service climate/set_preset_mode. 'vicare_programs'"

CFenner commented 5 months ago

@Miclot-mth thanks for reporting, I have the same device, so should be able to test/verify that. Do you have the issue when using the climate entity or calling the service via a service call?

CFenner commented 5 months ago

@Miclot-mth this works for me:

service: vicare.set_vicare_mode
data: {
  entity_id: climate.heizung_og_heating,
  vicare_mode: "heating"
}

As vicare_mode value all values from the entity attribute vicare_modes work.

vicare_modes: forcedNormal, forcedReduced, heating, standby

Note: the state in the ViCare app is not updating in a reasonable time, I need to restart the app to pull the current values.

x4N70pHyLL commented 5 months ago

@Miclot-mth this works for me: Note: the state in the ViCare app is not updating in a reasonable time, I need to restart the app to pull the current values.

For me it is the other way round, ViCare App always displays the "real" setting while HA sometimes does, sometimes does not change at all or only after a long time (sometimes hours). Makes it really difficult to operate (and finding errors) when the state does not reflect the reality

Miclot-mth commented 5 months ago

Same behavior with climate entity and by the service. With the service, vicare.set_vicare_mode seems to work with "heating" and "standby". With "forcedNormal" and "forcedReduced" I get "Failed to call service vicare.set_vicare_mode. Unknown error"

It's mainly set_preset_mode (eco, comfort) that doesn't work for me.

x4N70pHyLL commented 5 months ago

I got closer to the issue:

When I change to YAML mode and call the service with the parameters from the second screenshot, it works.

Conclusion: Setting seems possible, the offered standard values seem to be wrong, so you have to type them in via YAML when calling the service. This also means that you cannot directly set the mode on the thermostat in HA.

Miclot-mth commented 5 months ago

I got closer to the issue:

  • I assume the modes are set via the service call
  • When I check this call, I am offered the following options:
Bildschirmfoto 2024-06-28 um 10 49 18
  • However, the thermostat of my heat pump offers these:
Bildschirmfoto 2024-06-28 um 10 49 18

When I change to YAML mode and call the service with the parameters from the second screenshot, it works.

Conclusion: Setting seems possible, the offered standard values seem to be wrong, so you have to type them in via YAML when calling the service. This also means that you cannot directly set the mode on the thermostat in HA.

Sorry, but same screenshot?

x4N70pHyLL commented 5 months ago

I got closer to the issue:

  • I assume the modes are set via the service call
  • When I check this call, I am offered the following options:
Bildschirmfoto 2024-06-28 um 10 49 18
  • However, the thermostat of my heat pump offers these: Bildschirmfoto 2024-06-28 um 10 49 18

    When I change to YAML mode and call the service with the parameters from the second screenshot, it works. Conclusion: Setting seems possible, the offered standard values seem to be wrong, so you have to type them in via YAML when calling the service. This also means that you cannot directly set the mode on the thermostat in HA.

Sorry, but same screenshot?

Corrected it, see above

issue-triage-workflows[bot] commented 2 months ago

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

x4N70pHyLL commented 2 months ago

Issue is still there and should be addressed

tgerardy commented 1 month ago

@CFenner : Hi, any idea on how to solve this? Integration seems to work fine for many but I experience the same as described above. What works:

What doesn't work:

I have a recent (2023) Vitodens 200W boiler without DHW. The preset mode I have in ViCare app are: "eco", "normal", "Comfort" which are different from the one available in the integration. I don't have "home" or "sleep"

Adding my diagnostic if this helps

config_entry-vicare-01JAQ4NH8XCC0KTN37D6ERHQ6C.json

Regards

Thomas