* Only accept valid hvac actions sent via mqtt
* Only accept valid hvac actions sent via mqtt
* Fix existing action test and remove old one
* Remote None as valid hvac action being accepted
* Change loglevel of wrong hvac action received
* Add additional statistics characterics, improve rounding
* Improve name of age_usage_ratio
* Replace difference by three relevant distances
* Refactor attributes, remove stats, add metadata
* Fix binary sensor testcase
* Fix sensor defaults testcase
* Fix and enhance all testcases
* Remove age coverage from attr when not configured
* Refactor so only the relevant characteristic value is calculated
* Rename unclear characteristics, add timebound average
* Fix coverage warning
* Remove explicit functions dict
* Konnected - Fix multiple discovery of panels.
This resolves an issue which creates multiple discoveries of a Konnected panel if it is restarted and fails to connect to home assistant.
See #57467.
* Revert changes to user step, add handling to ssdp step.
* Add abort reason string to strings.json
* Abort ssdp discovery if device is already known.
* Add test for multiple discovery fix.
* Remove unrelated file change.
* Add ssdp discovery abort tests.
* Add missing abort reason check.
* Add "already_configured" to strings.
* Use "cannot_connect" abort reason.
* Use configured speed ranges for HomeSeer FC200+ fan controllers in zwave_js
* Fix pylint errors
* Remove unused param in tests
* Fix test values
* Address various review notes
* Remove now-redundant assertion
* Add an additional test case for set_percentage=0
* Use round() instead of int() for percentage computations; this makes the percentage setting match the setpoints in the UI
* Add additional tests
* Fix pct conversions
* Make conversion tests exhaustive
* Add tests for discovery data templates
* Revert "Add tests for discovery data templates"
This reverts commit 85dcbc0903.
* Improve typing on ConfigurableFanSpeedDataTemplate#resolve_data
* Move config error handling to the discovery data template
* Fix checks for config data
* Revise fallback logic in percentage_to_zwave_speed and ensure that the speed list is non-empty
* Rework error handling
* Fix runtime fan speed updates
* Use warning instead of warn
* Move data validation to get_speed_config; turns out that resolve_data is only called once, at startup.
* Temporarily remove the not-yet-used fixed fan speed template. Add an additional assertion to ensure speeds are sorted.
* Add a comment about the assertions in discovery_data_template.py
* Update homeassistant/components/zwave_js/discovery_data_template.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Fix typo in comment
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add unique_id and use DataUpdateCoordinator in Fronius (#57879)
* initial refactoring commit - meters
- config_flow (no strings, no tests yet)
- import yaml config
- FroniusSolarNet class for holding Fronius object , coordinators and some common data
- meter descriptions
- update coordinator
- entities (including devices)
* storage controllers
* error handling on init; inverter unique_id
* inverters
* power_flow
* fix VA, var, varh not valid for device_class power/energy
and add custom icons
* add SolarNet device for system wide values
* cleanup
* config_flow strings
* test config_flow
* use pyfronius 0.7.0
* enable strict typing
* remove TODO comments
* fix lint errors; move FroniusSensorEntity to sensor.py
* power_flow as optional coordinator
API V0 doesn't support power_flow endpoint
* show error message in logs
* prevent parallel requests to one host
* logger_info coordinator
* store FroniusSolarNet reference directly in coordinator
* cleanup coordinators when unloading entry
* round floats returned by Fronius API
* default icons for grid im/export tariffs
* small typing fix
* Update homeassistant/components/fronius/sensor.py
Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
* DC icons
* prepend names with "Fronius" and device type
to get more reasonable default entity_ids (eg. have them next to each other when alphabetically sorted)
* remove config_flow and devices
* rename _FroniusUpdateCoordinator to FroniusCoordinatorBase
and mark ABC
* move SensorEntityDescriptions to sensor.py
* Revert "move SensorEntityDescriptions to sensor.py"
This reverts commit 2e5a726eb6.
* Don't raise ConfigEntryNotReady and use regular refresh method
* move bridge initialization out of helper class
* no coverage tests
* power_flow update interval 10 seconds
* move SensorEntityDescriptions to sensor.py
without introducing a circular dependency
* deprecation warning for CONF_MONITORED_CONDITIONS
* remove extra_state_attributes form meter sensor entities
* readd diagnostic entities
* decouple default entity_id from default name
* use key instead of name for entity_id
and make deprecated config key optional
* adjust tests
* use old entity_ids
these changes are now backwards compatible
* check coverage
* simplify entity description definitions
* restore entity names of previous implementation
Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
* Add config_flow for Fronius integration (#59677)
* Cleanup Fronius config_flow and tests (#60094)
* Add devices to Fronius integration (#60104)
* New entity names for Fronius entities (#60215)
* Adaptive update interval for Fronius coordinators (#60192)
Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
* 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
* Add support for grouping HEOS media players
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
* Handle groups at controller level, refine tests.
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
* Fix linting issues
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/heos/media_player.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Rename variables and improve resolving of entity_ids
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Don't patch internal methods
Use the pytest fixtures which have already been defined for this.
* Fix linting issues
* Remove unused property
* Ignore groups with unknown leader
This makes sure that the group_members attribute won't contain a `None`
value as a leader entity_id.
* Don't call force_update_groups() from tests
* Don't pass `None` player ids to HEOS API
* Use signal for group manager communication
* Use imports for async_dispatcher_send/async_dispatcher_connect
* Raise exception when leader/player could not be resolved
* Disconnect signal handlers, avoid calling async_update_groups too early
* Update homeassistant/components/heos/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add accumulated precipitation to unit system
* Fix template test
* Fix typo of testing pressure instead of precipitation
* Add extra arguments so unit system test passes
* Add apparent_power for ZHA ElectricalMeasurement
* Add apparent_power to REPORT_CONFIG
* update device list with apparent_power attribute
* update test decorators for apparent_power
* remove comments
* Add test for apparent_power in test_sensor
* implemented config_flow and dataupdatecoordinator
* implemented config flow, dataupdatecoordinator and tests.
* undid extra vscode task
* fixed pylint errors
* updates based on review
* fix mypy in reauth
* fast interval to 5 sec
* fixed test patches and others from review
* added released package
* deleted wrong line from coveragerc
* updates to config and tests
* fixed test patch