Commit graph

33 commits

Author SHA1 Message Date
Joost Lekkerkerker
595d07f1c6
Improve lists in integrations [L-M] (#113227)
* Improve lists in integrations [L-M]

* Update homeassistant/components/mailbox/__init__.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Fix

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2024-03-13 21:28:21 +01:00
Marc Mueller
59a6035d3f
Add empty line after module docstring [j-m] (#112700) 2024-03-08 09:01:29 -05:00
G Johansson
8ef2bece59
Add new climate feature flags to lyric (#109571) 2024-02-04 15:03:48 +01:00
Numa Perez
5d8bf86279
Fix lyric TCC set temperature when in Auto mode (#106853) 2024-01-14 11:29:03 +01:00
Numa Perez
75ba879c34
Fix autoChangeoverActive for lyric LCC devices (#106925) 2024-01-14 11:27:48 +01:00
Alex Thompson
4c0fda9ca0
Fix Lyric LCC thermostats auto mode (#104853) 2023-12-11 16:27:02 +01:00
Alex Thompson
23cd66c54b
Fix Lyric HVAC mode reset on temperature change (#104910)
* Fix Lyric HVAC mode reset on temperature change

* Reduce code duplication

* Revert additional bugfix

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2023-12-03 22:13:26 +01:00
Jieyu Yan
81af45347f
Add fan modes in Lyric integration (#100420)
* Add fan modes in Lyric integration

* add fan_mode only when available

* move supported_features to init

* mapped fan_modes to built-in modes

* log KeyError for fan_modes
2023-09-16 20:58:00 +02:00
Joost Lekkerkerker
cab0bde37b
Use shorthand attributes in Lyric (#99593) 2023-09-04 15:05:33 +02:00
Joost Lekkerkerker
5a835e703f
Add entity translations to Honeywell Lyric (#98775) 2023-08-21 22:28:20 +02:00
Luca Leonardo Scorcia
9be532cea9
Fix inconsistent lyric temperature unit (#98457) 2023-08-18 10:52:22 +02:00
Franck Nijhof
3d557b5583
Collection of code styling tweaks (#87381) 2023-02-04 12:52:26 -05:00
Marc Mueller
b01efc55a2
Improve lyric generic typing (#84637) 2022-12-27 21:24:33 +01:00
Franck Nijhof
baef267f33
String formatting and max line length - Part 3 (#84394) 2022-12-22 13:35:47 +01:00
epenet
39ac2c1101
Adjust type hints for ClimateEntityFeature (#82206) 2022-11-16 21:17:50 +01:00
epenet
f14bb8195f
Import climate constants from root [a-l] (#78021) 2022-09-08 11:24:15 +02:00
epenet
cbe9eda0a8
Remove lyric from mypy ignore list (#74451) 2022-07-05 13:24:18 -05:00
epenet
f2d5433339
Use climate enums in lyric (#70682) 2022-04-26 09:36:32 +02:00
epenet
95fb4695e4
Use EntityFeature enum in components (l**) (#69412) 2022-04-06 21:34:58 -10:00
Numa Perez
46072d2997
Fix Lyric temperature setting when off (#68573) 2022-03-24 10:11:06 -07:00
Numa Perez
fa1394ff47
Fix lyric climate (#67018)
* Fixed the issues related to auto mode

I was having the same issues as described in #63403, specifically, the error stating that Mode 7 is not valid, only Heat, Cool, Off when trying to do anything while the thermostat is set to Auto. This error originates with the way the Lyric API handles the modes. Basically, when one queries the changeableValues dict, you get a mode=Auto, as well as a heatCoolMode, which is set to either Heat, Cool, Off. Per the documentation, heatCoolMode contains the "heat cool mode when system switch is in Auto mode". It would make sense that when changing the thermostat settings, mode=Auto should be valid, but it's not. The way the API understands that the mode should be set to Auto when changing the thermostat settings is by setting the autoChangeoverActive variable to true, not the mode itself. This require changes in the async_set_hvac_mode, async_set_temperature, and async_set_preset_mode functions. Related to this issue, I got rid of the references to hasDualSetpointStatus, as it seems that it always remains false in the API, even when the mode is set to auto, so again, the key variable for this is autoChangeoverActive.

While I was working on this I also noticed another issue. The support flag SUPPORT_TARGET_TEMPERATURE_RANGE had not been included, which did not allow for the temperature range to be available, thus invalidating the target_temperature_low and target_temperature_high functions. I added this flag and sorted out which set point (heat vs cool) should be called for each of them so things work as expected in Lovelace. I have tested all of these functionalities and they all work great on my end, so I thought I'd share.

* Update climate.py

* Update climate.py

Fixed two additional issues: 1) When the system is turned off from Auto, the heatCoolMode variable becomes 'Off', so when you try to restart the system back to Auto, nothing happens. 2) I now prevent the async_set_temperature function from being called with a new set point when the system is Off.
All changes tested and functional.

* Update climate.py

* Update climate.py

Return SUPPORT_PRESET_MODE flag only for LCC models (i.e. they have the "thermostatSetpointStatus" variable defined). TCC models do not support this feature

* Update climate.py

After playing with the official Honeywell API, I realized it doesn't like to received commands with missing data, i.e., it always wants to get a mode, coolSetpoint, heatSetpoint, and autoChangeoverActive variables. This was causing some random issues with changing modes, especially from coming from off, so I modified the async_set_temperature, and async_set_hvac_mode fuctions to always send all pertinent variables.

* Update climate.py

* Update climate.py

* Update climate.py

* Update climate.py

* Clean code and test everything

Alright, sorry for the multiple commits, fixing this properly took a fair bit of testing. I went ahead and cleaned up the code and made the following big picture changes: 
1) The integration now supports the Auto mode appropriately, to include the temperature range. 
2) There's a bug that actually manifests when using the native app. When the system is 'Off' and you try to turn it on to 'Auto', it will turn on briefly but will go back to 'Off' after a few seconds. When checking the web api, this appears to be related to the fact that the heatCoolMode variable seems to continue to store 'Off', even if the mode accurately displays 'Auto', and the autoChangeoverActive=True. So to overcome that inherent limitation, when the system is 'Off' and the user turns it to 'Auto', I first turn it to Heat, wait 3 seconds, and then turn it to 'Auto', which seems to work well.

* Update climate.py

* Fixed errors

* Fixed comments that were resulting in error.

* Update climate.py

* Update homeassistant/components/lyric/climate.py

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

* Update homeassistant/components/lyric/climate.py

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

* Update climate.py

I removed a blank line in 268 and another one at the end of the document. I also fixed the outdents of await commands after the _LOGGER.error calls, not sure what else may be driving the flake8 and black errors. Any guidance is much appreciated @MartinHjelmare

* Update climate.py

* Update climate.py

corrected some indents that I think were the culprit of the flake8 errors

* Update climate.py

I used VS Code to fix locate the flake8 errors. I ran black on it, so I'm hoping that will fix the last lingering black error.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-03-15 10:59:18 +01:00
epenet
d504a4dbda
Add setup type hints [k-m] (#63605)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:27:49 +01:00
Aidan Timson
e062d7aec0
Honeywell Lyric - Entity Descriptions (#54956)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-25 10:29:34 -07:00
muchtall
2ac0aea765
Fix Lyric cool mode (#54856)
* fixing Cool mode in lyric

* Use climate integration constants

I believe this fixes this issue: https://github.com/home-assistant/core/pull/51760#discussion_r650372737

* Run through black

* Delint

Co-authored-by: Yadu Raghu <yraghu55@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 12:50:28 +02:00
Franck Nijhof
2ed386f9e6
Migrate to async_get_current_platform everywhere (#50034) 2021-05-03 09:34:28 -07:00
jan iversen
d52bc2373f
Integrations i* - m*: Rename HomeAssistantType to HomeAssistant. (#49586) 2021-04-23 09:55:20 +02:00
Aidan Timson
18cbf3cdb2
Fix lyric heat cool setting (#47875) 2021-04-17 07:20:35 -10:00
Aidan Timson
3cd40ac79c
Set Lyric hold time to use local time instead of utc (#48994) 2021-04-10 21:48:33 +02:00
Marc Mueller
25a13d1554
Update typing 10 (#48071) 2021-03-18 13:07:04 +01:00
Aidan Timson
fb34d1a56e
Clean up Lyric (#47899) 2021-03-15 13:06:57 +01:00
Aidan Timson
984f02882b
Add HVAC action to Lyric climate platform (#47876) 2021-03-13 22:05:47 -10:00
Aidan Timson
253ae3f423
Lyric Code Improvements (#45819)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-01 14:09:25 -10:00
Aidan Timson
2d10c83150
Honeywell Lyric Integration (#39695)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-01-31 07:51:31 -10:00