Repository navigation
Conversation
…file - Introduce subdriver for Schlage Sense Pro (Aliro) door lock with UWB support - Add lock-modular-uwb-settings profile supporting lockUwbApproachSettings and lockUwbModeSettings - Implement scaffold for Matter Manufacturer-Specific Cluster communication - Link subdriver lifecycle and modular profile matching in matter-lock - Add unit and integration tests covering subdriver matcher, lifecycle, commands, and attribute reports
|
Duplicate profile check: Warning - duplicate profiles detected. |
|
Profile category check: ✅ Passed - all profiles have a category defined. |
|
matter-lock_coverage.xml
Minimum allowed coverage is Generated by 🐒 cobertura-action against 9718d88 |
Test Results 73 files 546 suites 0s ⏱️ For more details on these errors, see this check. Results for commit 9718d88. ♻️ This comment has been updated with latest results. |
- In schlage-sense-pro device_init, automatically upgrade previously onboarded locks missing lockUwbApproachSettings to lock-modular-uwb-settings - In match_profile_modular, check supports_capability_by_id for lockUwbApproachSettings - In can_handle, support hybrid matching on Vendor ID alongside Product ID or custom cluster - Clean up comment references to match lock-modular-uwb-settings profile name - Add unit test covering device_init migration on driver update
- Revert changes to src/init.lua, keeping the base driver completely generic - Move all profiling, doConfigure shadowing, and battery/feature attribute handling into schlage-sense-pro subdriver - Follows the self-contained subdriver architecture from matter-sensor and matter-switch - Verify all 177 matter-lock unit tests pass
Sharing match_profile_modular avoids a second profile and keeps battery, unlatch, and capability-change checks on one path. Co-authored-by: Cursor <cursoragent@cursor.com>
|
@hcarter-775 Thanks again for the review. The comments are addressed in 34b47b7, and the threads are resolved. Could you take another look when you have a chance? |
…rectly Removes the local capability fallback and calls device_configuration.match_profile from each profiling site. The Schlage optional capabilities are still applied inside that shared match. Co-authored-by: Cursor <cursoragent@cursor.com>
The test harness loads the published definitions, so a second copy in the test is unnecessary. Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
Check all that apply
Type of Change
Checklist
Description of Change
This PR adds the Schlage Sense Pro (Aliro) UWB settings subdriver.
lockUwbApproachSettingsandlockUwbModeSettingsare optional capabilities on the existinglock-modularandlock-modular-embedded-unlatchprofiles. The Schlage fingerprint stays onlock-modular. The driver uses the published capability definitions directly.Modular profiling lives in
device_configuration.luaand is shared with the base driver, including the battery field, unlatch profile, and optional-capability change guard. The subdriver registers the two UWB capabilities for Allegion vendor0x1236/ product0x3800(or the custom UWB cluster). Previously onboarded locks pick up the capabilities on init when either one is missing. The base driver callsdevice_configuration.match_profiledirectly.Cluster reads and writes live in
schlage_utils.lua. If neither the custom cluster nor DoorLock is present, the endpoint lookup returns nil and the write is skipped.Summary of Completed Tests
python3 tools/run_driver_tests.py -vv -f "matter-lock": 178/178 passed before the embedded capability schemas were removed from the test. The test now uses the capability definitions fetched for the run.luacheck --config .github/workflows/.luacheckrcon the modified Lua files: 0 warnings / 0 errors