Commit graph

802 commits

Author SHA1 Message Date
Raman Gupta
169a318ec4
Fix device name in zwave_js repair flow (#99414) 2023-09-01 18:06:37 +02:00
Raman Gupta
867e9b73bb
Add zwave_js device config file change fix/repair (#99314)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-30 17:29:22 +02:00
Raman Gupta
6e5f4566d5
Add zwave_js controller status sensor (#99252)
* Add zwave_js controller status sensor

* Also update network status command

* fix tests

* Remove WS command since we have a sensor entity

* Update sensor.py

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

* move driver assertion out of closures

* store state in tests

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-30 06:50:23 -04:00
Raman Gupta
40748a6c34
Add zwave_js controller identify event (#99254) 2023-08-30 11:32:41 +02:00
Raman Gupta
be126da72d
Bump zwave-js-server-python to 0.51.0 (#99250)
* Bump zwave-js-server-python to 0.51.0

* Fix how we patch the command
2023-08-29 02:45:43 -04:00
Marc Mueller
8b0fdd6fd2
Use asyncio.timeout [s-z] (#98452) 2023-08-15 14:34:18 +02:00
Robert Resch
b0f68f1ef3
Use @require_admin decorator (#98061)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-08-14 15:07:20 +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
Raman Gupta
056d00fb11
Update zwave_js entity naming logic (#98140)
* Update zwave_js entity naming logic

* Update homeassistant/components/zwave_js/entity.py

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

* store primary value locally

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-10 02:08:14 -04:00
Raman Gupta
5d3d66e47d
Bump zwave-js-server-python to 0.50.1 (#94760)
* Bump zwave-js-server-python to 0.50.0

* handle additional upstream changes

* Additional changes

* fix tests

* Convert two similar functions to be one function

* Fix docstring

* Remove conditional pydantic import

* Revert scope change

* Bump zwave-js-server-python

* Set default return value for command

* Remove line breaks

* Add coverage
2023-08-10 01:28:08 -04:00
Adrián Moreno
f2726527f2
Create zwave_js repair issue instead of warning log entry (#95997)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-25 09:55:05 +02:00
Franck Nijhof
30058297cf
Migrate backported StrEnum to built-in StrEnum (#97101) 2023-07-23 23:19:24 +02:00
Erik Montnemery
a8d77cc5ad
Teach zwave_js device trigger about entity registry ids (#96303) 2023-07-22 17:29:24 +02:00
Erik Montnemery
57352578ff
Use entity registry id in zwave_js device actions (#96407) 2023-07-18 09:36:40 +02:00
Erik Montnemery
7539cf25be
Don't require passing identifiers to DeviceRegistry.async_get_device (#96479)
* Require keyword arguments to DeviceRegistry.async_get_device

* Update tests

* Update tests

* Don't enforce keyword arguments
2023-07-13 13:39:25 -04:00
Paulus Schoutsen
7859be6481
Add deduplicate translations script (#96384)
* Add deduplicate script

* Fix forecast_solar incorrect key with space

* Fix utf-8

* Do not create references to other arbitrary other integrations

* Add commented code to only allow applying to referencing integrations

* Tweak

* Bug fix

* Add command line arg for limit reference

* never suggest to update common keys

* Output of script

* Apply suggestions from code review

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>

---------

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2023-07-13 11:52:50 -04:00
Franck Nijhof
d025b97bb9
Migrate Z-Wave services to support translations (#96361)
* Migrate Z-Wave services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-13 09:49:05 +02:00
Adrián Moreno
8c5df60cc3
Revert zwave_js change to THERMOSTAT_MODE_SETPOINT_MAP (#96058)
Remove THERMOSTAT_MODE_SETPOINT_MAP map

Signed-off-by: Adrian Moreno <adrian@morenomartinez.com>
2023-07-07 10:27:28 +02:00
Adrián Moreno
0e428f8d39
Deprecate Dry and Fan preset modes in favor of HVAC modes (#95634)
* zwave_js: deprecate Dry and Fan preset modes

Migrating Dry and Fan presets to HVAC modes

* Move consts. Set Dry and Fan as HVAC-first modes.

* Update homeassistant/components/zwave_js/climate.py

Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>

* Fix tests

* Keep track of HA release when deprecation was introduced

---------

Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2023-07-05 15:12:21 -04:00
Raman Gupta
de7677b28d
Small zwave_js code cleanup (#95745) 2023-07-03 09:30:53 +02:00
Raman Gupta
5265584159
Fix zwave_js device diagnostics dump (#94999)
* Fix zwave_js device diagnostics dump

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* improve test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-22 10:10:36 -04:00
Erik Montnemery
3c34e18130
Correct calls to super class in ZWaveConfigParameterSensor (#94925) 2023-06-20 22:58:34 +02:00
Raman Gupta
934e1a1603
Fix zwave_js trigger event reattach logic (#94702) 2023-06-16 09:35:29 +02:00
Erik Montnemery
2406b235b4
Name unnamed binary sensors by their device class (#92940)
* Name unnamed binary sensors by their device class

* Update type annotations

* Fix loading of entity component translations

* Add test

* Update integrations

* Set abode and rfxtrx binary_sensor name to None

* Revert changes in homekit_controller
2023-06-13 19:48:54 +02:00
Raman Gupta
f3ca3a8ee0
Set default value for endpoint in zwave device automations (#94445)
* Set default value for endpoint in zwave device automations

* add test case
2023-06-12 21:34:09 -04:00
Raman Gupta
41d8ba3397
Re-add event listeners after Z-Wave server disconnection (#94383)
* Re-add event listeners after Z-Wave server disconnection

* switch order

* Add tests
2023-06-11 08:35:52 +02:00
Erik Montnemery
5e3b632b14
Drop call to usb.get_serial_by_id from zwave_js config flow (#94279) 2023-06-09 10:04:01 +02:00
Raman Gupta
5461d0e28f
Fix zwave_js.update entity restore logic (#94043) 2023-06-05 00:35:17 +02:00
Sven Serlier
aa636a2805
Fix broken URL in Z-Wave JS (#93983)
Fix broken URL
2023-06-02 16:54:15 -04:00
Raman Gupta
d9f059fcaa
Improve logic for zwave_js.lock.is_locked attr (#93947) 2023-06-02 06:12:32 -04:00
Raman Gupta
3934f91242
Make Z-Wave device IBT4ZWAVE discoverable as a cover (#93946)
* Make Z-Wave device IBT4ZWAVE discoverable as a cover

* Test device class
2023-06-02 06:09:53 -04:00
Erik Montnemery
a1a055f618
Add config entry only config schema to integrations s-z (#93910) 2023-06-01 20:05:11 +02:00
Jeff Grieger
47a2d5b472
Add zwave_js speed config for additional GE/Jasco fan controllers (#92371)
* Add zwave_js speed config for additional GE/Jasco fan controllers

Add speed info for Honeywell(GE/Jasco) 39358 In-Wall Fan Speed Control and Enbrighten(GE/Jasco) 55258 In-Wall Fan Speed Control.

* Add test for Honeywell 39358 In-Wall Fan Speed Control
2023-06-01 00:09:35 +02:00
Raman Gupta
cb616cdf4e
Move Z-Wave refresh value service out of task (#93866) 2023-05-31 11:52:01 -04:00
Raman Gupta
f1552304e1
Give zwave_js platinum quality score (#93845) 2023-05-31 17:15:44 +02:00
Raman Gupta
bd8c88f51b
Add error handling for all zwave_js service calls (#93846)
* Add error handling for all service calls

* Switch siren to use internal function

* Remove failing checks

* Revert change to poll service, add comments, and add additional error handling

* Add error handling for ping and refresh + review comment + add tests

* Add test for statistics entity refresh
2023-05-31 11:09:01 -04:00
Raman Gupta
b3990d48d2
Improve Z-Wave support for Ultraviolet multilevel sensor values (#93848)
Improve support for Ultraviolet multilevel sensor values
2023-05-31 13:31:02 +02:00
Raman Gupta
1eb1ea08b0
Add support for Energy Production CC sensors (#93839) 2023-05-31 13:28:07 +02:00
Raman Gupta
4119d3198a
Support zwave config parameters not on endpoint 0 (#93383)
* Support zwave config parameters not on endpoint 0

* Update device automation logic

* Make endpoint required

* Update homeassistant/components/zwave_js/services.py

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

* Update homeassistant/components/zwave_js/services.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-05-30 23:52:12 -04:00
Raman Gupta
8cd8355ab1
Bump zwave-js-server-python to 0.49.0 (#93835)
* Bump zwave-js-server-python to 0.49.0

* fix tests
2023-05-30 22:40:55 -04:00
Raman Gupta
05c3d8bb37
Add zwave_js node statistics sensors (#91714)
* Add node statistics sensors

* fix tests and don't let controller state leak across tests

* Add background RSSI

* Remove extra logging statement

* fix test

* comments

* setup platform once

* Add static properties to entity description

* Update homeassistant/components/zwave_js/sensor.py

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

* don't dupe attribute values in entity description

* fix exception

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-05-30 20:44:32 +02:00
Raman Gupta
65187c6f11
Add zwave config parameter entities (#92223)
* Add zwave config parameter entities

* Remove unused entity const

* remove unusued imports

* review comments

* switch to reserved values

* fix test
2023-05-30 11:49:55 -04:00
Raman Gupta
90bf5429ca
Add support for Window Covering CC (#93314)
* Refactor zwave_js.cover and improve test coverage

* Remove extra fixtures

* cleanup old stuff

* Get coverage to 100

* Add support for Window Covering CC

* fix bug

* typo

* remove redundant stuff

* slight change to improve readability

* Add device class

* Update to match specs
2023-05-30 11:26:23 -04:00
Erik Montnemery
a71c097aeb
Revert "Allow setting an entity's name by its device class" (#93539) 2023-05-25 17:20:54 +02:00
Raman Gupta
f0874791d8
Refactor zwave_js.cover (#93433)
* Refactor zwave_js.cover and improve test coverage

* Remove extra fixtures

* cleanup old stuff

* Get coverage to 100

* Remove redundant stuff

* Revert all changes to tests

* Update conftest.py
2023-05-24 15:37:33 -04:00
Raman Gupta
872cd47e87
Add proper support for zwave_js Indicator CC (#90248)
* Add proper support for zwave_js Indicator CC

* remove stale test

* Make all indicators diagnostic

* only set entity category if it is specified

* Only set properties from discovery if specified

* Conditionally set assumed state as well

* fix const name

* Don't create task

* Disable property keys 3-5 by default

* add additional dispatcher_connects so we catch all signals

* be consistent about order

* rename new discovery parameter

* comment

* exclude property keys 3-5

* fix remove logic

* add comment so I don't forget

* Switch entity category to config where necessary

* cut line

* less lines

* Update homeassistant/components/zwave_js/switch.py

Co-authored-by: kpine <keith.pine@gmail.com>

* Move async_remove to respond to interview started event

* Set up listener immediately so we don't wait for platform creation

* remove dupe import

* black

* append

---------

Co-authored-by: kpine <keith.pine@gmail.com>
2023-05-24 09:09:38 -04:00
Raman Gupta
66f7218b68
Do optimistic state update for Z-Wave multilevel switch entities (#90490)
* Do optimistic state update for Z-Wave multilevel switch entities

* simplify

* define constant for setting value to previous value

* Rework to only consider value of 255 and only places where we know that the previous state is known by the integration due to the service being called

* missed commit

* better code

* Add tests and use constant from lib

* fix logic

* fix bug

* Add comments with more details
2023-05-24 09:04:11 -04:00
Raman Gupta
3e93dd6a01
Update name for Notification CC sensors and buttons (#93019)
* Update name for Notification CC sensors and buttons

* Add comment with reference to names
2023-05-24 09:00:37 -04:00
Raman Gupta
9b53484e2e
Remove unused zwave discovery logic (#93436) 2023-05-24 10:02:50 +02:00
Raman Gupta
3bf9eaffdf
Bugfix and add test coverage for zwave_js.light (#93257)
Add test coverage for zwave_js.light
2023-05-22 12:08:29 -04:00