* * Add migration from single device to multiple devices, removing all old entities
* Create new devices for Boiler and Thermostat
* Add classes for new entities based on the new devices
* Split binary_sensor entities into devices
* Split sensor entities into different devices
* Move climate entity to thermostat device
* Fix climate entity away mode
* Fix translation placeholders
* Allow sensor values with capital letters
* * Add EntityCategory
* Update and add device_classes
* Fix translation keys
* Fix climate entity category
* Update tests
* Handle `available` property in `entity.py`
* Improve GPIO state binary_sensor translations
* Fix: Updates are already subscribed to in the base entity
* Remove entity_id generation from sensor and binary_sensor entities
* * Use _attr_name on climate class instead of through entity_description
* Add type hints
* Rewrite to derive entities for all OpenTherm devices from a single base class
* Improve type annotations
* Use OpenThermDataSource to access status dict
* Move entity_category from entity_description to _attr_entity_category
* Move entity descriptions with the same translation_key closer together
* Update tests
* Add device migration test
* * Add missing sensors and binary_sensors back
* Improve migration, do not delete old entities from registry
* Add comments for migration period
* Use single lists for entity descriptions
* Avoid changing sensor values, remove translations
* * Import only required class from pyotgw
* Update tests
* Update opentherm_gw.binary_sensor to use entity_description
* Move binary_sensor related code to binary_sensor.py
Move common entity code to entity.py
* Remove unused logger from binary_sensor.py
* Add type hints
Address feedback
* Drop return value from vesync
* Add setup type hints to netgear_lte
* Drop return value from hyperion
* Add setup type hints to opentherm_gw
Co-authored-by: epenet <epenet@users.noreply.github.com>
* Adding option for setpoint override mode
Temporary setpoint override mode can now be set on or off. 'Constant' setpoint override mode will be used when Temporary is set to off
* Changes after review comment
Added default value for the setpoint override mode
* Add set_central_heating_ovrd service to opentherm_gw
* Use await instead of async_create_task
Use await instead of async_create_task as per review.
Co-authored-by: J. Nick Koston <nick@koston.org>
* Use boolean values for service call to opentherm_gw.set_central_heating_ovrd
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add and use time related constants
* Sort time constants and reuse them in data rate constants
* Fix greeneyemonitor import
* Fix greeneyemonitor import V2
* Fix failing here_travel_time test
* Add TIME_MONTHS and TIME_YEARS
* Use TIME_MINUTES in opentherm_gw and isy994
* Add and use TIME_MILLISECONDS
* Change inconsistent ones
* Add TIME_MICROSECONDS and TIME_WEEKS
* Use constants in apcupsd and travisci
* Fix import error in upnp sensor.py
* Fix isy994 sensor.py using TIME_YEARS
* Fix dyson tests
* Use TIME_SECONDS in more places
* Use TIME_DAYS in google wifi
* Add config flow support to opentherm_gw.
Bump pyotgw to 0.5b0 (required for connection testing)
Existing entries in configuration.yaml will be converted to config entries and ignored in future runs.
* Fix not connecting to Gateway on startup.
Pylint fixes.
* Add tests for config flow.
Remove non-essential options from config flow.
Restructure config entry data.
* Make sure gw_id is slugified
* Breaking change: Rewrite opentherm_gw to add support for more than one OpenTherm Gateway.
Breaks config layout and child entity ids and adds a required parameter to all service calls (gateway_id).
* Add schema and parameter description for service opentherm_gw.reset_gateway.
* Add optional name attribute in config to be used for friendly names.
Fix bugs in binary_sensor and climate platforms.
* pylint fixes
* Remove unused variables.
* Update manifest.json, remove REQUIREMENTS from .py file
* Update CODEOWNERS
* Address issues that were brought up (requested changes):
- Move imports to module level
- Change certain functions from async to sync
- Move constants to const.py (new file)
- Call gateway setup from outside of __init__()
- Move validation of monitored_variables to config schema
* Address requested changes:
- Make module imports relative
- Move more functions from async to sync, decorate with @callback where necessary
- Remove monitored_variables option, add all sensors by default