* Configuration via UI
Config flow / YAML deprecation
- Support discovery via MAC address
- Support import of YAML config
- Switch to ConfigEntry, get rid of platform setup
* Fix review comments
* More tests for vicare yaml import
* Update PyVicare to 2.x
With PyViCare 2.8.1 a breaking change was introduced which required changes on sensor and binary_sensor platforms:
- Circuit, Burner and Compressor have been separated out from the "main" device
- Multiple circuits and burners allow "duplicate sensors". We add the circuit or burner number as suffix now
At the same time the sensors are now created only when available:
During entity creation we can check if the value is provided for the user's device.
Sensors are not created by heating type anymore but instead the new API structure is reflected, providing device, burner or circuit sensors.
For details of breaking changes from PyViCare 1.x to 2.x please see https://github.com/somm15/PyViCare#breaking-changes-in-version-2x
* Integrate review comments
* variables cleanup
* Update unique ids
The unique ids shall not depend on the name but on the entity
description key (which should not change) and the id of the circuit,
burner or device.
* vicare: add set_vicare_mode service
The set_vicare_mode service allows the user to set any of the possible heating
modes of their heating device. Not just the ones that were mapped to
home assistant climate modes.
* vicare: Undo async changes and add heating mode
Useless async changes were undone.
To be able to set the most relevant modes the set_vicare_mode
shall be able to also set the heating mode (without domestic
hot water)
* Extract kwarg and undo some more async changes
Currectly extract the service argument
Adapt according to review
* Lint fixes
* Replace kwargs with single arg
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add sensor platform for vicare (heatpump)
* Formatting and fixes
* Formatting and fixes 2
* Fixes and formatting 3
* Fixes and formatting 4
* Add binary_sensor and more sensors
This moves some more climate attributes to sensors and adds
binary_sensors
* Move ActiveError back to climate component
The data returned by ActiveError is more complex.
It takes further investigation on how to interpret it a s a binary sensor.
Therefore it is moved back as an attribute of the climate component
* Update PyViCare library
* PR changes
* PR changes 2
Co-authored-by: Hans Oischinger <hans.oischinger@gmail.com>
This upgrades to PyVicare 0.1.10 which allows to combine multiple
requests into a single HTTP GET. This in turn allows us to increase
the scan_interval to 60 seconds by default.
Additionally scan_interval has been introduced as a config parameter.
* ViCare: Handle exceptions from PyViCare library (#28072)
Sometimes Viessmann server failures or other connection problems may
lead to exceptions thrown when updating data.
This commit handles those exceptions with some error logging and
makes sure that the component does not break completely in that case.
* Remove unneeded returns
* Remove unneeded returns
The PyVicare API can return the string "error" in case of connection
or authentication errors.
The current_temperature value could be set to "error" instead of a
nueric value or None which breaks the climate component.
This commit sets the current_temperature to None instead.