Commit graph

70 commits

Author SHA1 Message Date
Christopher Fenner
5f3e70f915
Fix climate entity in ViCare integration (#127128)
do not reset _attributes
2024-10-02 11:25:04 +02:00
Christopher Fenner
bc3a42c658
Fix serial handling in ViCare integration (#125495)
* hand down device serial into common entity

* fix platforms

* Revert "fix platforms"

This reverts commit 067af2b567.

* handle event loop issue

* hand in serial

* Revert "Revert "fix platforms""

This reverts commit 9bbb55ee6d.

* fix get serial call

* handle other exceptions

* also check device model for migration

* merge entity and device migration

* add test fixture without serial

* adjust test cases

* add dummy fixture

* remove commented code

* modify migration

* use continue

* break comment
2024-09-19 11:03:54 +02:00
Christopher Fenner
349ea35dc3
Fix device identifier in ViCare integration (#124483)
* use correct serial

* add migration handler

* adjust init call

* add missing types

* adjust init call

* adjust init call

* adjust init call

* adjust init call

* Update types.py

* fix loop

* fix loop

* fix parameter order

* align parameter naming

* remove comment

* correct init

* update

* Update types.py

* correct merge

* revert type change

* add test case

* add helper

* add test case

* update snapshot

* add snapshot

* add device.serial data point

* fix device unique id

* update snapshot

* add comments

* update nmigration

* fix missing parameter

* move static parameters

* fix circuit access

* update device.serial

* update snapshots

* remove test case

* Update binary_sensor.py

* convert climate entity

* Update entity.py

* update snapshot

* use snake case

* add migration test

* enhance test case

* add test case

* Apply suggestions from code review

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-04 18:41:20 +02:00
Christopher Fenner
f34b449f61
Correct device serial for ViCare integration (#125125)
* expose correct serial

* adapt inits

* adjust _build_entities

* adapt inits

* add serial data point

* update snapshot

* apply suggestions

* apply suggestions
2024-09-03 12:50:05 +02:00
Christopher Fenner
0591b5e47b
Improve code quality for ViCare integration (#124613)
* move type to module

* set translation key outside of init

* align import alias

* align constructor parameter order/naming

* move static attr init outside init function

* add missing types

* fix test

* revert move of _attributes
2024-08-26 08:30:28 +02:00
Christopher Fenner
eca67eb901
Add ability to change heating programs for heat pumps in ViCare integration (#110924)
* heating programs

* fix heating program

* fix heating program

* remove commented code

* simplify

* Update types.py

* update vicare_programs in init
2024-05-14 17:01:34 +02:00
Joost Lekkerkerker
6bb4e7d62c
Bump ruff to 0.3.4 (#112690)
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-03-26 00:02:16 +01:00
Folke Lemaitre
ba971890a9
Fix hvac_mode for viessmann devices with heatingCooling mode (#113054) 2024-03-11 15:05:31 +01:00
Marc Mueller
062cc4bfce
Add empty line after module docstring [t-v] (#112705) 2024-03-08 10:35:23 -05:00
Christopher Fenner
faef5da1c5
Handle exception in ViCare integration (#111128) 2024-03-04 10:10:59 +01:00
Christopher Fenner
88e9870f1c
Add number entities to change heat pump program temperatures in ViCare integration (#109315)
* add HeatingProgram type

* use HeatingProgram type

* add heatpump number sensors

* use HeatingProgram type

* Update strings.json

* rename HeatingProgram to Program

* remove commented code

* rename heating program type

* simplify

* Apply suggestions from code review

* Update strings.json

* Update const.py

* fix

* add heating program type

* correct imports

* Revert "fix"

This reverts commit 857dda59da.

* Apply suggestions from code review

* Update strings.json
2024-02-22 18:58:38 +01:00
Christopher Fenner
47cbe8f00c
Add support for multiple devices linked to a Viessmann account (#96044)
* care about all devices

* use first device for diagnostics

* update constants

* handle multiple devices

* handle multiple devices

* handle multiple devices

* handle multiple devices

* handle multiple devices

* code style

* code style

* code style

* code style

* code style

* remove unused import

* remove unused import

* use has_entity_name and add serial to device name

* use has_entity_name and add serial to device name

* use has_entity_name and add serial to device name

* use has_entity_name and add serial to device name

* use has_entity_name and add serial to device name

* remove unused constant

* Update const.py

* Update binary_sensor.py

* change format

* change format

* fix line duplication

* fix line duplication

* change format

* fix typo

* use serial in device name if multiple devices are found

* add common base class

* use base class

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update sensor.py

* Update binary_sensor.py

* correct import

* use base class

* fix cdestyle findings

* fix pylint findings

* fix mypy findings

* fix codestyle finidings

* move has_entity_name to base class

* Revert "fix mypy findings"

This reverts commit 2d78801a69.

* fix type issue

* move multiple device handling

* fix import

* remove special handling for device name

* extract api getter

* Update __init__.py

* Update __init__.py

* Update entity.py

* Update button.py

* Update binary_sensor.py

* Update climate.py

* Update sensor.py

* Update water_heater.py

* Apply suggestions from code review

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update __init__.py

* fix mypy & black

* move get_device to utils

* rename const

* Apply suggestions from code review

Co-authored-by: Robert Resch <robert@resch.dev>

* store device in config entry

* extract types

* fix diagnostics

* handle new platform

* handle api rate limit

* add types

* add types

* rename

* add types

* ignore gateways for now

* Update .coveragerc

* adjust types

* fix merge issues

* rename

* Update types.py

* fix type

* add test method

* simplify

* ignore unused devices

* Apply suggestions from code review

Co-authored-by: Robert Resch <robert@resch.dev>

* fix findings

* handle unsupported devices

* Apply suggestions from code review

Co-authored-by: Robert Resch <robert@resch.dev>

* Update types.py

* fix format

* adjust variable naming

* Update conftest.py

* Update conftest.py

* remove kw_only

* Apply suggestions from code review

* Update __init__.py

* Update binary_sensor.py

* Update button.py

* Update climate.py

* Update const.py

* Update diagnostics.py

* Update number.py

* Update sensor.py

* Update types.py

* Update water_heater.py

* fix comment

* Apply suggestions from code review

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-02-15 13:58:00 +01:00
G Johansson
29556465de
Add migrated climate feature flags to vicare (#109439) 2024-02-03 12:13:52 +01:00
Christopher Fenner
2dbc59fbea
Use home/sleep preset in ViCare climate entity (#105636)
* use home/sleep preset

* avoid setting reduced
2024-01-31 13:01:28 +01:00
G Johansson
73f670e793
Add TURN_ON/OFF ClimateEntityFeature for Vicare (#109135) 2024-01-30 17:59:58 +01:00
Christopher Fenner
6eec4998bd
Avoid changing state of reduced preset in ViCare integration (#105642) 2023-12-28 11:17:13 +01:00
Bart Janssens
a6af2be675
Skip activating/deactivating Vicare standby preset (#106476) 2023-12-28 09:31:35 +01:00
Christopher Fenner
c4e3ae84f4
Optimize async executor use in ViCare integration (#104645)
* use one async executor

* use list comprehension

* simplify

* simplify

* simplify

* simplify

* simplify

* simplify

* simplify

* simplify

* add type

* Apply suggestions from code review

* fix ruff findings
2023-11-29 09:28:56 +01:00
Christopher Fenner
d1463a81d3
Fix async issue in ViCare climate entity (#104619)
* use async executor

* use async executor

* Revert "use async executor"

This reverts commit 4913e05b1c.

* Revert "use async executor"

This reverts commit 40abc10362.

* fix async issue
2023-11-28 10:19:20 +01:00
Christopher Fenner
a5934e9acc
Handle preset change errors in ViCare integration (#103992) 2023-11-27 15:35:43 +01:00
Christopher Fenner
ad17acc6ca
Fix async issue in ViCare integration (#104541)
* use async executor for get_circuits

* use async executor for get_burners and get_compressors
2023-11-26 15:28:58 +01:00
Christopher Fenner
48f8cec84b
Add reuse functions to access circuits, burners and compressors in ViCare integration (#104371) 2023-11-25 15:47:45 +01:00
Christopher Fenner
17cef8940f
Add translation keys to ViCare integration (#104425)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-11-25 13:11:29 +01:00
Christopher Fenner
5805601a83
Set unique_id by base entity in ViCare integration (#104277)
* set unique_id in ViCareEntity

* remove individual unique_id functions

* remove description

* remove individual _attr_unique_id

* fix return types
2023-11-21 09:53:02 +01:00
Christopher Fenner
ae7bb60677
Fix types in ViCare integration (#101926)
* fix type

* fix return type

* fix type

* fix type

* Apply suggestions from code review

* Update climate.py

* Apply suggestions from code review

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update __init__.py

* Update climate.py

* Update __init__.py

* Apply suggestions from code review

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update binary_sensor.py

* Update button.py

* Update sensor.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-10-13 23:13:39 +02:00
Christopher Fenner
6d2fbeb556
Migrate ViCare to has_entity_name (#101895)
* set has_entity_name

* remove sensor prefix

* Apply suggestions from code review

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-10-12 21:06:09 +02:00
Christopher Fenner
5c52a15df7
Fix type issue in vicare integration (#101872)
* fix type issue

* fix type issue

* fix type issue

* extract from constructor

* Revert "extract from constructor"

This reverts commit a33de7ca8e.
2023-10-12 15:01:23 +02:00
Christopher Fenner
6e1c23906c
Add base entity class in vicare integration (#101870)
* add entity base class

* depend on base class

* add device info to base class

* remove individual DeviceInfo

* move class

* fix imports

* add file comment

* use super()

* fix formatting

* add vicare/entity.py
2023-10-12 14:54:16 +02:00
Joost Lekkerkerker
eeaca8ae3c
Use shorthand attributes in Vicare (#99915) 2023-09-09 23:18:41 +02:00
Erik Montnemery
045c327928
Move DeviceInfo from entity to device registry (#98149)
* Move DeviceInfo from entity to device registry

* Update integrations
2023-08-10 22:04:26 -04:00
Hans Oischinger
235a34c10c
Catch vicare errors when deactivating preset fails (#84778)
vicare: catch errors when deactivating preset fails
2022-12-29 15:28:33 +01:00
epenet
c7a6b5983f
Use UnitOfTemperature in climate entities [t-z] (#83129) 2022-12-05 10:18:57 +01:00
epenet
6affd9c6fb
Import climate constants from root [m-z] (#78178) 2022-09-10 23:42:28 +02:00
epenet
050cb275ff
Improve entity type hints [v] (#77885) 2022-09-06 13:59:05 +02:00
epenet
e19e65908a
Use _attr_precision in entities (#77477) 2022-08-29 22:02:29 +02:00
epenet
0c401bcab2
Use _attr_temperature_unit in climate entities (#77472) 2022-08-29 10:20:55 +02:00
epenet
b9c135870a
Fix model in vicare device_info (#74135) 2022-06-28 17:54:07 +02:00
Hans Oischinger
4ee92f3953
Improve hvac_mode compatibility of vicare (#66454) 2022-06-23 11:34:34 +02:00
epenet
475296fb36
Use climate enums in vicare (#70751) 2022-04-25 21:28:19 -10:00
epenet
f194f7809b
Use EntityFeature enum in components (v**) (#69465)
* Use EntityFeature enum in vallox

* Use EntityFeature enum in velbus

* Use EntityFeature enum in velux

* Use EntityFeature enum in venstar

* Use EntityFeature enum in vera

* Use EntityFeature enum in verisure

* Use EntityFeature enum in vesync

* Use EntityFeature enum in vicare

* Use EntityFeature enum in vivotek

* Use EntityFeature enum in vizio

* Use EntityFeature enum in vlc

* Use EntityFeature enum in vlc_telnet

* Use EntityFeature enum in volumio
2022-04-07 08:42:18 +02:00
Hans Oischinger
2c8bf006eb
Fix precision of vicare target & current temperature (#66456) 2022-03-16 13:14:11 +01:00
Hans Oischinger
94a0f1c7b3
Add service configuration URL for vicare (#66927) 2022-02-20 11:47:05 +01:00
Bart Janssens
4522a5698c
Fix vicare program presets (#66476) 2022-02-14 15:42:40 +01:00
Hans Oischinger
99fd16d675
Clean up vicare code (#65774)
* Clean up vicare code

Remove constants that were only used once
Remove _build_entity and use constructor directly

* Fix copy/paste issue
2022-02-05 14:26:44 +01:00
Hans Oischinger
a9cc35d6b6
Handle vicare I/O in executor (#65105)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-28 12:06:05 +01:00
Hans Oischinger
8d6880ab85
Support systems w/o circuits (#64779) 2022-01-24 11:18:54 +01:00
Hans Oischinger
2969a7ab4f
Address late review of vicare config flow (#63343)
* Review comments from #56691

* Adapt to review suggestions

* Update homeassistant/components/vicare/strings.json

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-05 22:49:42 +01:00
epenet
6f4b25950c
Add climate setup type hints [m-z] (#63279)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 13:09:43 +01:00
Hans Oischinger
38b976e6d6
Add vicare config flow (#56691)
* 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
2021-11-22 15:06:42 +01:00
Hans Oischinger
e656974e8d
Increase setMode flexibility (#58491) 2021-10-27 14:22:16 +02:00