Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rolling up main to beta #1417

Merged
merged 32 commits into from
Jun 3, 2024
Merged

Rolling up main to beta #1417

merged 32 commits into from
Jun 3, 2024

Conversation

dljsjr
Copy link
Contributor

@dljsjr dljsjr commented Jun 3, 2024

No description provided.

nickolas-deboom and others added 30 commits February 15, 2024 15:21
…its when device is configured

When device is configured, read the temperature limits and heat/cool setpoint limits and set capability constraints based on the limits.
Add TemperatureMeasurement cluster to mock device endpoint in
thermostat setpoint limits test.
…n device is configured

Updates to align closer to Matter Switch, with one handler for
temperature min and max.
device is configured

Update featuremap test to account for temp limits being read in the
doConfigure lifecycle state handler.
device init

Reworking changes to address review comments. Moved the limit reads from
doConfigure to the init function. Updated test cases accordingly. Reworked
handler functions to align with Matter-Switch driver updates.
Add endpoint id to temp limit fields. Rework test cases.
Removing debug statements and adding a comment to address review
comments.
Add early returns to handler functions when the data is nil.
Utilize get_latest_state in set_setpoint to get the setpoint limit
ranges rather than relying on the device fields.
Before sending the setpoint range capabilities, convert from F to C if
needed.
This commit addresses a review comment to utilize the second return
value of get_latest_state when querying the capabilities for heating and
cooling setpoint ranges in order to capture the unit.
Subscribe to the min/max temperature and heating/cooling setpoint
limit attributes rather than reading them during device init.
This is to resolve an InteractionQueueFull issue discovered during
an exception report.
Capabilities for temp and setpoint limit ranges should only be sent for
supported hubcore versions (>= FW 53). This corresponds to RPC version 4
which is used in the driver to ensure that the temperature conversion is
supported.
Add test cases to verify that dynamic constraint capabilities are not
set when RPC version is less than 4.
Remove unused variable to resolve luacheck issue.
* WWSTCERT-996

* Update drivers/SmartThings/matter-button/fingerprints.yml

* Update drivers/SmartThings/matter-button/fingerprints.yml

Co-authored-by: Eugen Feraru <[email protected]>

---------

Co-authored-by: Steven Green <[email protected]>
Co-authored-by: Eugen Feraru <[email protected]>
Updates certain profiles to use the new TempHumiditySensor category.
…gory

Update profile category to TempHumiditySensor where appropriate
Philips Hue Smart Plug is exposed as a 'light' service so existing light code
was modified to include the case for Philips Hue Smart Plug new device adoption and use
This is the Hue Dimmer Remote and the Hue Tap Dial.

Note that we do *not* yet have support for the rotary portion of the tap dial.
Philips Hue Smart Button is exposed as a 'button' service in addition to
including the 'device_power' service. Development and inclusion of this
device driver was modelled after the 4-button-remote device driver
This refactor furthers the generalizations done previously for devices
that provide multiple services to allow for not only mapping of services
to capabilities or components, but also multiple device records.

This allows for us to support devices such as the Dymera up/down light.

Other changes:

- I found myself frequently introducing bugs related to using the Hue Bridge ID
(MAC Address) as a Device ID, and the Bridge Device ID as a Hue Bridge ID. We renamed
all instances of `bridge_id` referencing the MAC to `bridge_network_id` to try and
alleviate the confusion.

- Button support is further generalized to support two-button models, which covers the
In-Wall Switch Module in the 2-gang configuration.
- Fixes an issue where compound devices wouldn't be labeled properly
- Fixes an issue where the stray device task was scanning a bridge every time it onboarded, even if there were no strays
- Fixes an issue where refresh on devices could fail early in driver start by accidentally passing in an API Key string instead of an API Rest Client instance to a function
- Fixes an issue where multi-service devices (Buttons, Motion Sensors, Contact Sensors) could sometimes fail to emit attributes if their init handler ran before their parent bridge's network connection was open.

Move `battery` above refresh in profile for motion

Remove debug logic from tamper emit

Remove unused Rooms API calls

Replace strings with consts in API methods

Add missing early return in button attribute handler

Early return in device discovery for unsupported buttons

Move debug logs to correct function

Update category for single button profile

Fix duped line from bad rerere rebase

Finish SSE event stream generalizations

Tidy up docs/logs that still assume lights-only

Generalize stray device handling

Normalize module structures
* New Devices Matter Zemismart D001, D002, D003

* Update drivers/SmartThings/matter-switch/fingerprints.yml

Co-authored-by: Cooper Towns <[email protected]>

* Update drivers/SmartThings/matter-switch/fingerprints.yml

Co-authored-by: Cooper Towns <[email protected]>

* Update drivers/SmartThings/matter-switch/fingerprints.yml

Co-authored-by: Cooper Towns <[email protected]>

---------

Co-authored-by: Cooper Towns <[email protected]>
…limit-reads

Matter Thermostat: Heat/cool setpoint and temp limits dynamic constraints
Copy link

github-actions bot commented Jun 3, 2024

Duplicate profile check: Passed - no duplicate profiles detected.

Copy link

github-actions bot commented Jun 3, 2024

Channel deleted.

Copy link

github-actions bot commented Jun 3, 2024

Test Results

   57 files  ±0    368 suites  +1   0s ⏱️ ±0s
1 786 tests +6  1 786 ✅ +6  0 💤 ±0  0 ❌ ±0 
3 101 runs  +6  3 101 ✅ +6  0 💤 ±0  0 ❌ ±0 

Results for commit 15d3f91. ± Comparison against base commit b3baa36.

Copy link

github-actions bot commented Jun 3, 2024

matter-button_coverage.xml

File Coverage
All files 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-button/src/init.lua 92%

matter-sensor_coverage.xml

File Coverage
All files 84%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-button/src/init.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/MeasuredValue.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/types/Feature.lua 66%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/commands/init.lua 57%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/init.lua 71%

matter-switch_coverage.xml

File Coverage
All files 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-button/src/init.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/MeasuredValue.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/types/Feature.lua 66%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/commands/init.lua 57%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/init.lua 71%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/init.lua 96%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/eve-energy/init.lua 91%

matter-thermostat_coverage.xml

File Coverage
All files 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-button/src/init.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/MeasuredValue.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/types/Feature.lua 66%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/commands/init.lua 57%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/init.lua 71%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/init.lua 96%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/eve-energy/init.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/init.lua 94%

zigbee-humidity-sensor_coverage.xml

File Coverage
All files 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-button/src/init.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/MeasuredValue.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/types/Feature.lua 66%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/commands/init.lua 57%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/init.lua 71%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/init.lua 96%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/eve-energy/init.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-humidity-sensor/src/aqara/init.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-humidity-sensor/src/plant-link/init.lua 97%

zwave-sensor_coverage.xml

File Coverage
All files 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-button/src/init.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/MeasuredValue.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/attributes/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/types/Feature.lua 66%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/server/commands/init.lua 57%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/PressureMeasurement/init.lua 71%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/init.lua 96%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/eve-energy/init.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-humidity-sensor/src/aqara/init.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-humidity-sensor/src/plant-link/init.lua 97%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/aeotec-multisensor/multisensor-6/init.lua 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/zooz-4-in-1-sensor/init.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/fibaro-flood-sensor/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/init.lua 95%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/preferences.lua 99%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/aeotec-multisensor/init.lua 97%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/homeseer-multi-sensor/init.lua 95%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/wakeup-no-poll/init.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/aeotec-multisensor/multisensor-7/init.lua 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/apiv6_bugfix/init.lua 80%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/enerwave-motion-sensor/init.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zwave-sensor/src/sensative-strip/init.lua 94%

Minimum allowed coverage is 90%

Generated by 🐒 cobertura-action against 15d3f91

@dljsjr dljsjr merged commit f6cb8d7 into beta Jun 3, 2024
50 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants