Commit graph

105 commits

Author SHA1 Message Date
Marcel van der Veldt
d7c713d18d
Fix typo in Matter lock platform (#122536) 2024-07-24 20:12:51 +02:00
Stefan Agner
07b2a7537b
Add Matter update entities for devices with OTA requestor (#120304)
* Add Matter update entities for devices with OTA requestor

Matter devices which support the OTA requestor cluster can receive
updates from a OTA provider. The Home Assistant Python Matter Server
implements such an OTA provider now.

Add update entities for devices which support the OTA requestor cluster
and check for available updates. Allow the user to update the firmware.
The update progress will be read directly from the devices' OTA
requestor cluster.

* Update homeassistant/components/matter/update.py

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>

* Bump python-matter-server to 6.3.0

This includes models and commands required for device firmware updates.

* Fix tests by including the new bluetooth_enabled field

* Add update entity tests

* Fix update entity test

* Update entity picture docstring

* Add note about reasons for progress state change update

* Enable polling for update entities by default

Matter entities don't enable polling any longer. Enable polling for
update entities by default.

* Add comment about why Update entities are polled

---------

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
2024-07-23 15:25:02 +02:00
Marcel van der Veldt
632dec614a
Fix several issues with the Matter Generic Switch Cluster (#122191) 2024-07-23 10:10:32 +02:00
Marcel van der Veldt
3d3bc1cab1
Revert "Add mac address as connection for matter device (#121257)" (#122133) 2024-07-18 17:38:30 +02:00
Björn Ebbinghaus
2723ab3b27
Add mac address as connection for matter device (#121257) 2024-07-16 00:54:16 +02:00
Marcel van der Veldt
42003ae5ac
Matter lock state follow-up (#121669) 2024-07-10 11:20:26 +02:00
jvmahon
d5135d4956
Add support for the Select platform in Matter (#119769)
* Add support for ModeSelect Cluster

* Update discovery.py

* Add files via upload

* refactor part 1

* Update discovery.py

* add remaining mode discovery schemas

* add test

* type alias

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2024-07-04 18:29:10 +02:00
Marcel van der Veldt
24f6e6e885
Fix locking/unlocking transition state in Matter lock platform (#121099) 2024-07-04 09:20:55 +02:00
Marcel van der Veldt
52627b9aed
Handle mains power for Matter appliances (#121023) 2024-07-02 21:02:29 +02:00
Marc Mueller
921430d497
Import Generator from collections.abc (3) (#120916) 2024-07-01 12:09:11 +02:00
Stefan Agner
44aad2b821
Improve Matter Server version incompatibility handling (#120416)
* Improve Matter Server version incompatibility handling

Improve the handling of Matter Server version. Noteably fix the issues
raised (add strings for the issue) and split the version check into
two cases: One if the server is too old and one if the server is too
new.

* Bump Python Matter Server library to 6.2.0b1

* Address review feedback
2024-06-26 11:43:51 +02:00
Ludovic BOUÉ
2ad5b1c3a6
Add Matter discovery schemas for BooleanState sensors (#117870)
Co-authored-by: Stefan Agner <stefan@agner.ch>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2024-06-21 18:57:18 +02:00
Marcel van der Veldt
4110f4f393
Fix Matter entity names (#120038) 2024-06-21 16:42:22 +02:00
jvmahon
12f812d6da
Add number platform to Matter integration (#119770)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2024-06-21 15:53:50 +02:00
Paul Bottein
7a3a57c78e
Add open state support to matter lock (#119682) 2024-06-15 11:24:33 +02:00
epenet
fbaba3753b
Fix root-import pylint warning in components (#119294)
* Fix root-import pylint warning in components

* Adjust

* Adjust
2024-06-10 15:14:49 +02:00
Sid
721b2c2ca8
Enable Ruff PT012 (#113957) 2024-06-08 17:59:08 +02:00
Marc Mueller
33ed4fd862
Import Generator from typing_extensions (3) (#118990) 2024-06-06 17:28:59 +02:00
epenet
c7cc465e5c
Add return type hints in tests (k-z) (#118942) 2024-06-06 10:11:29 +02:00
Marcel van der Veldt
a95c074ab8
Extend Matter sensor discovery schemas for Air Purifier / Air Quality devices (#118483)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-05-30 16:59:45 +02:00
Alexey Guseynov
fc5d58effd
Add Total Volatile Organic Compounds (tVOC) matter discovery schema (#116963) 2024-05-30 12:20:02 +02:00
Marcel van der Veldt
8cc15e82df
Fix light discovery for Matter dimmable plugin unit (#118404) 2024-05-29 21:09:50 +02:00
Marcel van der Veldt
7136be5047
Bump Python Matter Server library to 6.1.0(b0) (#118388) 2024-05-29 19:20:18 +02:00
Marcel van der Veldt
5f5288d8b9
Several fixes for the Matter climate platform (#118322)
* extend hvacmode mapping with extra modes

* Fix climate platform

* adjust tests

* fix reversed test

* cleanup

* dry and fan hvac mode test
2024-05-28 21:18:35 -04:00
epenet
ead0e797c1
Use registry fixtures in tests (m-n) (#118291) 2024-05-28 13:40:45 +02:00
Marcel van der Veldt
21f5ac7715
Fix Matter device ID for non-bridged composed device (#118256) 2024-05-28 12:47:46 +02:00
Ludovic BOUÉ
f44dfe8fef
Add Matter fan platform (#111212)
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2024-05-28 12:24:58 +02:00
epenet
44f715bd02
Use issue_registry fixture in component tests (#118041) 2024-05-24 15:54:20 +02:00
Marcel van der Veldt
8230bfcf8f
Some fixes for the Matter light discovery schema (#116108)
* Fix discovery schema for light platform

* fix switch platform discovery schema

* extend light tests

* Update switch.py

* clarify comment

* use parameter for supported_color_modes
2024-05-01 11:46:52 +02:00
epenet
ad84ff18eb
Use remove_device helper in tests (1/2) (#116240)
* Use remove_device helper in tests

* Update test_tag.py

* Update test_tag.py
2024-04-30 12:52:33 +02:00
Martin Hjelmare
0e0ea0017e
Add matter during onboarding (#116163)
* Add matter during onboarding

* test_zeroconf_not_onboarded_running

* test_zeroconf_not_onboarded_installed

* test_zeroconf_not_onboarded_not_installed

* test_zeroconf_discovery_not_onboarded_not_supervisor

* Clean up

* Add udp address

* Test zeroconf udp info too

* test_addon_installed_failures_zeroconf

* test_addon_running_failures_zeroconf

* test_addon_not_installed_failures_zeroconf

* Clean up stale changes

* Set unique id for discovery step

* Fix tests for background flow

* Fix flow running in background

* Test already discovered zeroconf

* Mock unload entry
2024-04-29 10:59:36 +02:00
epenet
0b01326f9f
Use is in ConfigEntryState enum comparison in tests (A-M) (#114925) 2024-04-05 17:16:55 +02:00
Joost Lekkerkerker
5d500cb74b
Use is in enum comparison in config flow tests K-O (#114672) 2024-04-02 11:21:42 -10:00
Martin Hjelmare
52ca14de48
Add matter zeroconf (#114385)
* Add matter zeroconf

* Clean up
2024-03-28 14:57:18 +01:00
Marcel van der Veldt
0e12fea0cb
Fix Matter airconditioner discovery of climate platform (#114326)
* Discover Thermostat platform for Room Airconditioner device

* add test

* Adjust docstring

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
2024-03-27 22:35:08 +01:00
Martin Hjelmare
c5f6925948
Add matter device serial number (#113878) 2024-03-20 15:31:48 +01:00
Marc Mueller
1722e23df8
Add empty line after module docstring [tests l-p] (#112710) 2024-03-08 14:55:15 +01:00
Marcel van der Veldt
e7213a4192
Handle Matter nodes that become available after startup is done (#109956) 2024-02-08 13:14:10 +01:00
Marcel van der Veldt
d6e617eff8
Bump Python matter server to 5.5.0 (#109894) 2024-02-08 08:59:57 +01:00
Marcel van der Veldt
fd5efd1f79
Add transition support to Matter light platform (#109803)
* Add support for transitions to Matter light platform

* fix the feature check

* add tests
2024-02-06 22:59:55 +01:00
Marcel van der Veldt
68c633c317
Add Matter Websocket commands for node actions and diagnostics (#109127)
* bump python-matter-server to version 5.3.0

* Add all node related websocket services

* remove open_commissioning_window service

as it wasnt working anyways

* use device id instead of node id

* tests

* add decorator to get node

* add some tests for invalid device id

* add test for unknown node

* add explicit exception

* adjust test

* move exceptions

* remove the additional config entry check for now

to be picked up in follow up pR
2024-01-31 14:15:56 +01:00
matt7aylor
dec9eb9ae4
Matter sensors for air quality measurements (#108173)
* Matter sensors for air quality measurements
Add sensors for CO2, PM1, PM2.5, PM10 and TVOC

* Add initial tests for matter air quality sensor

* Remove VOC data as requires unit extraction from cluster
2024-01-27 08:46:24 +01:00
Martin Hjelmare
fabf8802f5
Fix matter color modes (#108804)
* Fix matter light color modes

* Make onoff light fixture only onoff

* Make dimmable light only a dimmable light

* Make color temp light fixture only a color temp light
2024-01-25 09:15:38 +01:00
Marcel van der Veldt
52acc4bbab
Fix turning on the light with a specific color (#108080) 2024-01-15 11:08:38 +01:00
Marcel van der Veldt
13702d51b1
Add more fine grained control over Matter server commissioning for the Companion apps (#106237) 2023-12-27 16:55:07 +01:00
G Johansson
8cd0644035
Add translation to ServiceValidationError in Lock (#105746) 2023-12-27 12:50:27 +01:00
Robert Resch
494a897568
Deprecate deprecated climate constants (#106096) 2023-12-21 00:00:21 +01:00
Øyvind Matheson Wergeland
9fb9ff4f90
Remove workaround for default lock code in Matter (#105173)
* Matter: Remove workaround for default lock code

* Review

* Review 2
2023-12-08 11:46:27 +01:00
Marcel van der Veldt
516966db33
Add Matter custom cluster sensors (Eve Energy Plug energy measurements) (#104830)
* Support for sensors from custom clusters in Matter

* lint

* no need to write state twice

* Add test for eve energy plug

* Update homeassistant/components/matter/entity.py

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

* adjust comment

* debounce extra poll timer

* use async_call_later helper

* Update homeassistant/components/matter/entity.py

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

* wip extend test

* Update test_sensor.py

* fix state class for sensors

* trigger (fake) event callback on all subscribers

* Update eve-energy-plug.json

* add test for additionally polled value

* adjust delay to 3 seconds

* Adjust subscribe_events to always use kwargs

* Update tests/components/matter/common.py

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

* Update test_sensor.py

* remove redundant code

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-12-04 17:21:41 +01:00
Marcel van der Veldt
4829b21fd0
Update Matter test fixtures to schema version 5 (#104829) 2023-11-30 20:08:58 +01:00