Christian Clauss
df7d2b3aeb
Fix typos found by codespell ( #31243 )
...
* Fix typos found by codespell
* Fix typos found by codespell
* codespell: Furture ==> Future
* Update test_config_flow.py
* Update __init__.py
* Spellcheck: successfull ==> successful
* Codespell: unsuccesful ==> unsuccessful
* Codespell: cant ==> can't
* Codespell: firware ==> firmware
* Codespell: mimick ==> mimic
2020-01-31 08:33:00 -08:00
Ville Skyttä
fa4fa30461
Various string cleanups ( #30435 )
...
* Remove some unnecessary string concatenations
* Replace some simple str.formats with f-strings
* Replace some string concatenations with f-strings
2020-01-03 14:47:06 +01:00
Paulus Schoutsen
bb14a083f0
Store capabilities and supported features in entity registry, restore registered entities on startup ( #30094 )
...
* Store capabilities and supported features in entity registry
* Restore states at startup
* Restore non-disabled entities on HA start
* Fix test
* Pass device class from entity platform
* Clean up restored entities from state machine
* Fix Z-Wave test?
2019-12-31 14:29:43 +01:00
Andrew Onyshchuk
bfafa77016
Fix support for legacy Z-Wave thermostats ( #29955 )
...
This brings back support for Z-Wave thermostats
of SETPOINT_THERMOSTAT specific device class.
Such devices don't have COMMAND_CLASS_THERMOSTAT_MODE
and are now handled separately.
2019-12-15 20:02:18 -05:00
Bas Nijholt
16a7408f23
Sort imports according to PEP8 for zwave ( #29658 )
2019-12-09 12:29:12 +01:00
Andrew Onyshchuk
f5c01cc30d
Improve z-wave thermostat support ( #27040 )
...
* Improve z-wave thermostat support
Discover thermostat using COMMAND_CLASS_THERMOSTAT_MODE
so that it is a single entitiy in case there are multiple
setpoints. z-wave docs mention it is always present.
Add support for single/range target temperature depending
on the current thermostat mode.
* Remove debug print
* Refactor Z-Wave dynamic setpoint(s) selection
- use explicit mapping between modes and setpoints as defined in
Z-Wave specs
- add tests for away (2 setpoints) and heat eco (1 setpoint) modes
* Add non-standard thermostat mode aliases
2019-11-25 16:32:37 -08:00
Franck Nijhof
04ab20846a
Bump black to 19.10b0 ( #28310 )
2019-10-28 23:32:34 -07:00
Andrew Onyshchuk
eeffd090a3
Add support for Z-Wave battery level ( #26943 )
...
* Add support for Z-Wave battery level
* Improve coverage
2019-09-27 10:21:04 -07:00
lifeisafractal
5d5102e1a2
Add zwave application version ( #26205 )
...
* Set application version in zwave
* update tests for more coverage
2019-09-09 23:59:40 +02:00
Robert Svensson
a2589f56e1
Add system options to config entries ( #25926 )
...
* Add system options to config entries
* For feedback
* Follow most of balloobs comments
* Fix balloobs comments
* Improvements
* Fix second round of Balloobs comments
* Fix third round
* Add system options to mock config entry
* Fix integration tests
* Fix the last failing tests
* Fix disabled string
* Fix failing disabled_by tests
* New tests
* Config entry WS API tests
* Fix comments
2019-08-17 21:34:11 -07:00
jaminh
5e00b546eb
Zwave Climate: Fan state attribute missing ( #25287 ) ( #25573 )
...
Add fan state back in to device state attributes
Change fan state to fan action
2019-08-05 12:25:48 +02:00
Charles Garwood
0a87a4bfda
Add usb_path to Z-Wave network_status websocket response ( #25617 )
...
* Add usb stick path to zwave network_status websocket response
* Move to separate websocket command
* Return additional config options
* add tests
2019-08-04 17:21:37 -06:00
Santobert
944cd70753
Feature zwave preset modes ( #25537 )
...
* Initial commit
* Add some more code
* Local tests passing
* Remove unnecessary line
* Add preset attributes to __init__
* Remove some more debugger lines
* Add some tests
* Fix comparision to None
* Improve test coverage
* Use unknown modes as presets
* Bugfixes and test improvements
* Add tests for unknown preset modes
* linting
* Improve mappings
* Move PRESET_MANUFACTURER_SPECIFIC to zwave
* Replace isinstance with cast
* Add test for hvac_action
* hvac_mode is never None
* Improved mapping of current mode to hvac/preset modes
* Fix bugs where hvac_mode is None
* Add default hvac mode
* Fixed default hvac mode
* Fix linting
* Make flake happy
* Another linting
* Make black happy
* Complete list of default hvac modes
* Add mapping to heat/cool eco
* Fixed another bug where mapping goes wrong
2019-08-02 10:00:33 +02:00
Paulus Schoutsen
4de97abc3a
Black
2019-07-31 12:25:30 -07:00
Pascal Vizeli
84cf76ba36
Climate 1.0 ( #23899 )
...
* Climate 1.0 / part 1/2/3
* fix flake
* Lint
* Update Google Assistant
* ambiclimate to climate 1.0 (#24911 )
* Fix Alexa
* Lint
* Migrate zhong_hong
* Migrate tuya
* Migrate honeywell to new climate schema (#24257 )
* Update one
* Fix model climate v2
* Cleanup p4
* Add comfort hold mode
* Fix old code
* Update homeassistant/components/climate/__init__.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* Update homeassistant/components/climate/const.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* First renaming
* Rename operation to hvac for paulus
* Rename hold mode to preset mode
* Cleanup & update comments
* Remove on/off
* Fix supported feature count
* Update services
* Update demo
* Fix tests & use current_hvac
* Update comment
* Fix tests & add typing
* Add more typing
* Update modes
* Fix tests
* Cleanup low/high with range
* Update homematic part 1
* Finish homematic
* Fix lint
* fix hm mapping
* Support simple devices
* convert lcn
* migrate oem
* Fix xs1
* update hive
* update mil
* Update toon
* migrate deconz
* cleanup
* update tesla
* Fix lint
* Fix vera
* Migrate zwave
* Migrate velbus
* Cleanup humity feature
* Cleanup
* Migrate wink
* migrate dyson
* Fix current hvac
* Renaming
* Fix lint
* Migrate tfiac
* migrate tado
* Fix PRESET can be None
* apply PR#23913 from dev
* remove EU component, etc.
* remove EU component, etc.
* ready to test now
* de-linted
* some tweaks
* de-lint
* better handling of edge cases
* delint
* fix set_mode typos
* apply PR#23913 from dev
* remove EU component, etc.
* ready to test now
* de-linted
* some tweaks
* de-lint
* better handling of edge cases
* delint
* fix set_mode typos
* delint, move debug code
* away preset now working
* code tidy-up
* code tidy-up 2
* code tidy-up 3
* address issues #18932 , #15063
* address issues #18932 , #15063 - 2/2
* refactor MODE_AUTO to MODE_HEAT_COOL and use F not C
* add low/high to set_temp
* add low/high to set_temp 2
* add low/high to set_temp - delint
* run HA scripts
* port changes from PR #24402
* manual rebase
* manual rebase 2
* delint
* minor change
* remove SUPPORT_HVAC_ACTION
* Migrate radiotherm
* Convert touchline
* Migrate flexit
* Migrate nuheat
* Migrate maxcube
* Fix names maxcube const
* Migrate proliphix
* Migrate heatmiser
* Migrate fritzbox
* Migrate opentherm_gw
* Migrate venstar
* Migrate daikin
* Migrate modbus
* Fix elif
* Migrate Homematic IP Cloud to climate-1.0 (#24913 )
* hmip climate fix
* Update hvac_mode and preset_mode
* fix lint
* Fix lint
* Migrate generic_thermostat
* Migrate incomfort to new climate schema (#24915 )
* initial commit
* Update climate.py
* Migrate eq3btsmart
* Lint
* cleanup PRESET_MANUAL
* Migrate ecobee
* No conditional features
* KNX: Migrate climate component to new climate platform (#24931 )
* Migrate climate component
* Remove unused code
* Corrected line length
* Lint
* Lint
* fix tests
* Fix value
* Migrate geniushub to new climate schema (#24191 )
* Update one
* Fix model climate v2
* Cleanup p4
* Add comfort hold mode
* Fix old code
* Update homeassistant/components/climate/__init__.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* Update homeassistant/components/climate/const.py
Co-Authored-By: Paulus Schoutsen <paulus@home-assistant.io>
* First renaming
* Rename operation to hvac for paulus
* Rename hold mode to preset mode
* Cleanup & update comments
* Remove on/off
* Fix supported feature count
* Update services
* Update demo
* Fix tests & use current_hvac
* Update comment
* Fix tests & add typing
* Add more typing
* Update modes
* Fix tests
* Cleanup low/high with range
* Update homematic part 1
* Finish homematic
* Fix lint
* fix hm mapping
* Support simple devices
* convert lcn
* migrate oem
* Fix xs1
* update hive
* update mil
* Update toon
* migrate deconz
* cleanup
* update tesla
* Fix lint
* Fix vera
* Migrate zwave
* Migrate velbus
* Cleanup humity feature
* Cleanup
* Migrate wink
* migrate dyson
* Fix current hvac
* Renaming
* Fix lint
* Migrate tfiac
* migrate tado
* delinted
* delinted
* use latest client
* clean up mappings
* clean up mappings
* add duration to set_temperature
* add duration to set_temperature
* manual rebase
* tweak
* fix regression
* small fix
* fix rebase mixup
* address comments
* finish refactor
* fix regression
* tweak type hints
* delint
* manual rebase
* WIP: Fixes for honeywell migration to climate-1.0 (#24938 )
* add type hints
* code tidy-up
* Fixes for incomfort migration to climate-1.0 (#24936 )
* delint type hints
* no async unless await
* revert: no async unless await
* revert: no async unless await 2
* delint
* fix typo
* Fix homekit_controller on climate-1.0 (#24948 )
* Fix tests on climate-1.0 branch
* As part of climate-1.0, make state return the heating-cooling.current characteristic
* Fixes from review
* lint
* Fix imports
* Migrate stibel_eltron
* Fix lint
* Migrate coolmaster to climate 1.0 (#24967 )
* Migrate coolmaster to climate 1.0
* fix lint errors
* More lint fixes
* Fix demo to work with UI
* Migrate spider
* Demo update
* Updated frontend to 20190705.0
* Fix boost mode (#24980 )
* Prepare Netatmo for climate 1.0 (#24973 )
* Migration Netatmo
* Address comments
* Update climate.py
* Migrate ephember
* Migrate Sensibo
* Implemented review comments (#24942 )
* Migrate ESPHome
* Migrate MQTT
* Migrate Nest
* Migrate melissa
* Initial/partial migration of ST
* Migrate ST
* Remove Away mode (#24995 )
* Migrate evohome, cache access tokens (#24491 )
* add water_heater, add storage - initial commit
* add water_heater, add storage - initial commit
delint
add missing code
desiderata
update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
delint
* Add Broker, Water Heater & Refactor
add missing code
desiderata
* update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
* bugfix - loc_idx may not be 0
more refactor - ensure pure async
more refactoring
appears all r/o attributes are working
tweak precsion, DHW & delint
remove unused code
remove unused code 2
remove unused code, refactor _save_auth_tokens()
* support RoundThermostat
bugfix opmode, switch to util.dt, add until=1h
revert breaking change
* store at_expires as naive UTC
remove debug code
delint
tidy up exception handling
delint
add water_heater, add storage - initial commit
delint
add missing code
desiderata
update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
add water_heater, add storage - initial commit
delint
add missing code
desiderata
update honeywell client library & CODEOWNER
add auth_tokens code, refactor & delint
refactor for broker
delint
bugfix - loc_idx may not be 0
more refactor - ensure pure async
more refactoring
appears all r/o attributes are working
tweak precsion, DHW & delint
remove unused code
remove unused code 2
remove unused code, refactor _save_auth_tokens()
support RoundThermostat
bugfix opmode, switch to util.dt, add until=1h
revert breaking change
store at_expires as naive UTC
remove debug code
delint
tidy up exception handling
delint
* update CODEOWNERS
* fix regression
* fix requirements
* migrate to climate-1.0
* tweaking
* de-lint
* TCS working? & delint
* tweaking
* TCS code finalised
* remove available() logic
* refactor _switchpoints()
* tidy up switchpoint code
* tweak
* teaking device_state_attributes
* some refactoring
* move PRESET_CUSTOM back to evohome
* move CONF_ACCESS_TOKEN_EXPIRES CONF_REFRESH_TOKEN back to evohome
* refactor SP code and dt conversion
* delinted
* delinted
* remove water_heater
* fix regression
* Migrate homekit
* Cleanup away mode
* Fix tests
* add helpers
* fix tests melissa
* Fix nehueat
* fix zwave
* add more tests
* fix deconz
* Fix climate test emulate_hue
* fix tests
* fix dyson tests
* fix demo with new layout
* fix honeywell
* Switch homekit_controller to use HVAC_MODE_HEAT_COOL instead of HVAC_MODE_AUTO (#25009 )
* Lint
* PyLint
* Pylint
* fix fritzbox tests
* Fix google
* Fix all tests
* Fix lint
* Fix auto for homekit like controler
* Fix lint
* fix lint
2019-07-08 14:00:24 +02:00
Penny Wood
23dd644f4a
Update IDs for rename node/value ( #24646 )
...
* Update IDs for rename node/value
* Rename devices and entities
* Improved coverage
2019-07-01 15:54:19 -07:00
Tommaso Marchionni
cb5426c1fa
Added invert_percent configuration for zwave rollershutter ( #23101 )
...
* Added invert_percent configuration for zwave rollershutter
* Added invert_percent configuration for zwave rollershutter
* Fix typo in zwave default configuration
2019-06-17 14:44:47 -07:00
Charles Garwood
1282370ccb
Entity Cleanup on Z-Wave node removal ( #23633 )
...
* Initial groundwork for entity cleanup on node removal
* Connect node_removed to dispatcher
* update docstring
* Add node_removal test
* Address review comments
* Use hass.add_job instead of run_coroutine_threadsafe
2019-05-19 11:14:11 +02:00
Andrew Loe
dbcdc32f05
Ensure Boolean configuration values are handled correctly. ( #22810 )
2019-04-15 14:24:20 -07:00
Charles Garwood
c8375be4b1
Replace get_platform ( #23014 )
...
* Update Z-Wave to use async_get_integration
* Change load method per PR comments
* update tests
2019-04-12 12:22:56 -04:00
cgtobi
8cc5cc7f43
Add zwave network key validator ( #22785 )
...
* Add zwave network key validator
* Move validator to zwave component
* Move validator to zwave component
* Move stuff
* Move stuff
* Remove helper and replace with voluptuous method
* Add test
* Fix long line
* Improve tests
* Add more negative tests
* Remove unnecessary assertion
* Make the linter happy
* Remove print
2019-04-08 06:18:52 -07:00
Joakim Plate
c5de32e7b1
Climate const.py move ( #20945 )
...
* Move constants to const.py
* Import from const instead of climate
2019-02-14 20:34:43 +01:00
Paulus Schoutsen
49bab574b9
Clean up Z-Wave pt2 ( #20842 )
2019-02-07 17:27:31 -08:00
Paulus Schoutsen
f3b20d138e
Embed Z-Wave platforms ( #20810 )
2019-02-07 22:50:59 +01:00
Daniel Høyer Iversen
ef6b0b8e0b
Update flake8 to 3.7.5 ( #20761 )
...
* Upgrade flake8
* Upgrade flake8
* Add noqa for hound
2019-02-05 11:12:09 +01:00
Paulus Schoutsen
df21dd21f2
RFC: Call services directly ( #18720 )
...
* Call services directly
* Simplify
* Type
* Lint
* Update name
* Fix tests
* Catch exceptions in HTTP view
* Lint
* Handle ServiceNotFound in API endpoints that call services
* Type
* Don't crash recorder on non-JSON serializable objects
2018-11-30 21:28:35 +01:00
Charles Garwood
b7742999cf
Update Z-Wave Tests asyncio/yield from -> async/await ( #18599 )
...
* Update lock tests
* Update binary sensor
* Update zwave component tests
2018-11-20 14:58:03 -05:00
Charles Garwood
bcea3a9cba
Don't try to re-add existing Z-Wave entities ( #17995 )
...
* Keep track of created entities
* lint
* Update tests
2018-11-01 19:38:23 +01:00
Paulus Schoutsen
08fe7c3ece
Pytest tests ( #17750 )
...
* Convert core tests
* Convert component tests to use pytest assert
* Lint 🤷♂️
* Fix test
* Fix 3 typos in docs
2018-10-24 12:10:05 +02:00
Charles Garwood
9c52a3ce22
Z-Wave Device Registry Support ( #17291 )
...
* Add device_registry support for sensor and switch domains
* Add device_registry support for light
* Add device registry to binary_sensor, climate, cover
* Add device registry to zwave fan
* Fix test for config entry loading
* lint
* revert erroneous modification
* Revert device_registry.py change
2018-10-16 14:58:25 +02:00
Charles Garwood
cf249e3e5e
Z-Wave Config Entry Support ( #17119 )
...
* Initial Z-Wave Config Entry Support
* Use conf.get() for config import
* Uncomment test
* Re-add line breaks
* tabs -> space
* Unused import cleanup & lint fixes
* Remove unused config flow link step
* Address comments
* Remove unused import
* Fix tests
* Check for valid usb_path
* Test for Z-Stick in config flow
* Pass config dir to ZWaveOption
* Auto-generate Network Key if none provided
* Test fixes
* Address comments & more start network service registration
* add_executor_job for options.lock()
2018-10-09 16:30:55 +02:00
Jan van Helvoort
7d1960baba
Add zwave.network_complete_some_dead event ( #16894 )
...
* Add zwave.network_complete_some_dead event
* add missing comma
* typo
* Add SIGNAL_AWAKE_NODES_QUERIED_SOME_DEAD Test
* Add blank lines
* fix linter warnings
Line too long
* remove trailing whitespace
* Change test signal
* Listen to other event
2018-09-28 19:14:57 +02:00
Blake Blackshear
2cc6263092
Add new services for set/refresh Z-Wave device values ( #16638 )
...
* Add services for getting and setting indicator values for Z-Wave
* Add service to manually refresh Z-Wave node value by value_id
* Remove refresh_indicator service
* Coerce to int
* Add generic set_node_value service
* Remove set_indicator service
2018-09-27 12:34:42 +02:00
Paulus Schoutsen
4f9fc9b39f
Don't create entity registry in tests ( #16838 )
2018-09-25 10:16:30 +02:00
Glenn Waters
2a85ed7236
Streamline log messages ( #16243 )
2018-09-18 15:06:52 +02:00
Paulus Schoutsen
994b829cb4
add_devices -> add_entities ( #16171 )
...
* add_devices -> add_entities
* Lint
* PyLint
* Revert external method in scsgate
2018-08-24 16:37:30 +02:00
Paulus Schoutsen
c7f4bdafc0
Context ( #15674 )
...
* Add context
* Add context to switch/light services
* Test set_state API
* Lint
* Fix tests
* Do not include context yet in comparison
* Do not pass in loop
* Fix Z-Wave tests
* Add websocket test without user
2018-07-28 17:53:37 -07:00
Andrey
6c3e2021df
Give unknown zwave nodes a better name ( #14353 )
...
* Give unknown zwave nodes a better name
* Update util.py
2018-05-28 21:49:38 -04:00
Andrey
d1228d5cf4
Look at registry before pulling zwave config values ( #14408 )
...
* Look at registry before deciding on ID for zwave values
* Reuse the new function
2018-05-12 17:45:36 -04:00
Andrey
10505d542a
Make sure zwave nodes/entities enter the registry is proper state. ( #14251 )
...
* When zwave node's info is parsed remove it and re-add back.
* Delay value entity if not ready
* If node is ready consider it parsed even if manufacturer/product are missing.
* Add annotations
2018-05-08 15:30:28 -04:00
Andrey
f72d568374
Add unique_id to zwave node entity ( #14201 )
...
* Add unique_id to zwave node entity
* Wait 30s before adding zwave node if its unique_id is not ready
* Use only node_id in unique_id. Update name, manufacturer, and product attributes on node update.
2018-05-02 16:10:26 -04:00
John Arild Berentsen
fe56844a3a
Bugfix: Zwave Print_node to logfile instead of console ( #13302 )
...
* Print to logfile instead of console
* Review changes
* Typo
2018-04-05 11:14:15 +02:00
John Arild Berentsen
5c4529d044
Bugfix: Zwave set_config_parameter failed when config list contained int ( #13301 )
...
* Cast list and bool options to STR
* Add button options to STR
* Add TYPE_BUTTON to value types
* Adjust comparison
* Remove Logging
* Remove Empty line
* Update tests
* Update tests
* Mistake
2018-03-20 14:04:24 +01:00
Paulus Schoutsen
5a9013cda5
Refactor Hue: phue -> aiohue ( #13043 )
...
* phue -> aiohue
* Clean up
* Fix config
* Address comments
* Typo
* Fix rebase error
* Mark light as unavailable when bridge is disconnected
* Tests
* Make Throttle work with double delay and async
* Rework update logic
* Don't resolve host to IP
* Clarify comment
* No longer do unnecessary updates
* Add more doc
* Another comment update
* Wrap up tests
* Lint
* Fix tests
* PyLint does not like mix 'n match async and coroutine
* Lint
* Update aiohue to 1.2
* Lint
* Fix await MagicMock
2018-03-16 20:27:05 -07:00
Paulus Schoutsen
d0f089975d
Run asyncio event loop in debug mode during tests ( #13058 )
...
* Run asyncio event loop in debug mode during tests
* Remove debug mode again
2018-03-11 12:32:12 -07:00
Adam Mills
dc8424032b
Remove Z-Wave old/new entity_id attributes ( #12652 )
2018-03-11 10:30:03 -04:00
Paulus Schoutsen
e51427b284
Entity registry ( #11979 )
...
* Entity#unique_id defaults to None
* Initial commit entity registry
* Clean up unique_id property
* Lint
* Add tests to entity component
* Lint
* Restore some unique ids
* Spelling
* Remove use of IP address for unique ID
* Add tests
* Add tests
* Fix tests
* Add some docs
* Add one more test
* Fix new test…
2018-01-30 10:39:39 +01:00
Otto Winter
8dcfd35b8b
Spelling fixes ( #12041 )
...
* Spelling fixes
*Lots* of them.
* Spelling breaking changes
* Fix lint errors
2018-01-29 23:37:19 +01:00
Anders Melchiorsen
5b0a475197
Postpone "Z-wave not ready" warning ( #11807 )
...
* Release worker thread while waiting for Z-wave startup
* Increase zwave startup timeout
* Adjust test
* Use asyncio.sleep in _check_awaked
* Remove lint
* Name loop parameter
2018-01-24 09:27:58 +01:00
Adam Mills
11ecc2c171
Remove extra info from zwave entity states ( #10413 )
...
* Remove extra info from zwave entity states
* Show initializing for nodes that haven't completed queries
2017-11-07 10:13:39 -05:00