Skip to content

Conversation

@hcarter-775
Copy link
Contributor

@hcarter-775 hcarter-775 commented Nov 10, 2025

Description of Change

Similar to the updates to Matter Switch: #2401 and Matter Sensor: #2521 .

This re-organizes the Matter Thermpstat driver to be more easily understandable and developer friendly.

I also updated the copyrights to the new shortened versions.

Note:

In making these changes on this PR, I have slightly re-worked the modular profile gating logic to make it "primary" over the static profile gating. The logic should be identical, but the is_modular_profile_supported helper function and the main match_profile entry function that used to exist have been consolidated into the now general match_profile function in the new device_configuration.lua file and were thus removed. If anything, I would pay special attention to this particular bit of logic.

Summary of Completed Tests

Unit tests all continue to pass, ensuring general functions remain intact. Like with the other PRs, I have manually ensured that each moved field and util function is appropriately linked to its associated function through VS code smart-linking.

Embedded clusters have been tested by running unit tests on old lua libs and ensuring that expected functionality is intact.

Tested with the following VDA devices:

  • Fan
  • Water Heater
  • Air Purifier
  • Thermostat
  • Room Air Conditioner
  • Heat Pump

@github-actions
Copy link

github-actions bot commented Nov 10, 2025

Channel deleted.

@github-actions
Copy link

Test Results

   71 files  ±0    465 suites  ±0   0s ⏱️ ±0s
2 416 tests ±0  2 416 ✅ ±0  0 💤 ±0  0 ❌ ±0 
4 103 runs  ±0  4 103 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 56ec681. ± Comparison against base commit 737773e.

@github-actions
Copy link

File Coverage
All files 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/init.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/thermostat_handlers/attribute_handlers.lua 81%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/thermostat_handlers/capability_handlers.lua 88%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/thermostat_utils/device_configuration.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/thermostat_utils/legacy_device_configuration.lua 86%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/thermostat_utils/utils.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-thermostat/src/thermostat_utils/embedded_cluster_utils.lua 95%

Minimum allowed coverage is 90%

Generated by 🐒 cobertura-action against 56ec681

@greens
Copy link
Contributor

greens commented Nov 12, 2025

I'm not seeing the functions you mentioned in device_configuration.lua like you mentioned?

@hcarter-775 hcarter-775 merged commit 2e7ffb9 into main Nov 24, 2025
11 checks passed
@hcarter-775 hcarter-775 deleted the reorder/matter-thermostat branch November 24, 2025 22:35
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.

3 participants