Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
355 commits
Select commit Hold shift + click to select a range
aca8e37
Merge pull request #2868 from SmartThingsCommunity/release/skip-beta-…
ctowns Apr 1, 2026
e9d9394
update next to __pairs, rawget to __index (#2865)
hcarter-775 Apr 1, 2026
b5e30c3
Merge branch 'beta' into main
ctowns Apr 1, 2026
3648699
Remove duplicate code from bad merge (#2872)
ctowns Apr 1, 2026
81a4f35
rolling up main to beta 2026-04-01 (#2871)
ctowns Apr 2, 2026
b9d7b40
Script for and updating min_api_version of tests. Updated to run PRs …
aleclorimer Mar 31, 2026
f8db0da
Merge pull request #2866 from SmartThingsCommunity/chore/test_tagging_59
aleclorimer Apr 2, 2026
8a4b8f2
Updating permissions for statuses
aleclorimer Apr 1, 2026
e763995
Merge pull request #2869 from SmartThingsCommunity/jenkins-test-non-s…
aleclorimer Apr 3, 2026
d593cda
Sonos: Remove Hardcoded Ports (#2855)
hcarter-775 Apr 3, 2026
82cdfe2
CHAD-17426: Add stateless step capabilities to zigbee-switch
wkhenon Feb 26, 2026
09cb31c
Aqara Wireless Knob Switch H1 (#2844)
haedo-doo Apr 7, 2026
9754f29
Reinit capabilities upon feature change when profile is unchanged
samadDotDev Apr 9, 2026
5d5c24f
Merge pull request #2882 from SmartThingsCommunity/main
hcarter-775 Apr 9, 2026
1094ae3
Handle FeatureMap change, fix profile matching & reinit
samadDotDev Apr 9, 2026
ceb767c
Add Sonoff SNZB-04PR2 (WWSTCERT-10731) and SNZB-04P (WWSTCERT-10704) …
laity-w-sudo Apr 9, 2026
74859d7
WWSTCERT-9786 Inovelli - adding vzw31 red series dimmer switch (#2654)
InovelliUSA Apr 9, 2026
6f306e3
Fix pad19 fingerprint (#2878)
JerryYang01 Apr 9, 2026
3d88670
WWSTCERT-9857 Add Zooz ZSE50 to zwave-siren (for WWST Cert) (#2681)
jtp10181 Apr 9, 2026
0e5dbc8
WWSTCERT-10696 - add new zigbee-humididt-sensor SNZB-02DR2 (#2573)
zmguko Apr 10, 2026
c39614b
WWSTCERT-10652 ULTRALOQ Matter Door Lock (#2889)
cbaumler Apr 10, 2026
d387762
Deep copy latest state, use `pairs` to handle map-like capability tab…
samadDotDev Apr 13, 2026
164d905
Fix luacheck lints
samadDotDev Apr 13, 2026
a883224
add nil check handling for electrical sensor handlers
hcarter-775 Apr 13, 2026
d04ecd9
explicitly check default endpoint for water valves
hcarter-775 Apr 13, 2026
c93c379
WWSTCERT-8045 - Aeotec Home Energy Meter Gen8 (Revert + fixes) (#2791)
KKlimczukS Apr 14, 2026
c5a2410
Merge pull request #2899 from SmartThingsCommunity/add/nil-safety-han…
hcarter-775 Apr 14, 2026
ff3cdb0
Remove unused init function
samadDotDev Apr 14, 2026
8c3a810
Fixing zigbee-switch tests for ColorTempPhysMireds
aleclorimer Apr 9, 2026
23b6134
Merge pull request #2887 from SmartThingsCommunity/matter-cam/re-init…
samadDotDev Apr 14, 2026
a23af85
Merge pull request #2900 from SmartThingsCommunity/support/ensure-def…
hcarter-775 Apr 14, 2026
98114d8
Merge pull request #2886 from SmartThingsCommunity/colorTempPhysicalM…
aleclorimer Apr 14, 2026
29fb178
WWSTCERT-10696 - add new zigbee-humididt-sensor SNZB-02DR2 (#2573)
zmguko Apr 10, 2026
6f65fd4
Fix pad19 fingerprint (#2878)
JerryYang01 Apr 9, 2026
a44596d
WWSTCERT-9786 Inovelli - adding vzw31 red series dimmer switch (#2654)
InovelliUSA Apr 9, 2026
2016726
WWSTCERT-9857 Add Zooz ZSE50 to zwave-siren (for WWST Cert) (#2681)
jtp10181 Apr 9, 2026
7e913bb
WWSTCERT-8045 - Aeotec Home Energy Meter Gen8 (Revert + fixes) (#2791)
KKlimczukS Apr 14, 2026
cd86c6e
Reinit capabilities upon feature change when profile is unchanged
samadDotDev Apr 9, 2026
917e710
Handle FeatureMap change, fix profile matching & reinit
samadDotDev Apr 9, 2026
387d384
Deep copy latest state, use `pairs` to handle map-like capability tab…
samadDotDev Apr 13, 2026
c934a21
Fix luacheck lints
samadDotDev Apr 13, 2026
cd95815
Remove unused init function
samadDotDev Apr 14, 2026
1c1d98f
add nil check handling for electrical sensor handlers
hcarter-775 Apr 13, 2026
24f06e8
use fan-modular profile as device fingerprint
hcarter-775 Apr 13, 2026
d16df97
Merge pull request #2902 from SmartThingsCommunity/update/orein-finge…
hcarter-775 Apr 16, 2026
86c1bfd
Merge pull request #2818 from SmartThingsCommunity/zigbee-switch/stat…
hcarter-775 Apr 16, 2026
dd0f5ea
Merge pull request #2904 from SmartThingsCommunity/beta-release/4-15
cjswedes Apr 16, 2026
4b078ef
WWSTCERT-11013 SMART WIFI MATTER WALL SWITCH 2G (#2905)
cbaumler Apr 16, 2026
a9d1692
add MultiIR Smoke Detector MIR-SM200 (#2874)
thinkaName Apr 21, 2026
a910034
add MultiIR Smart button MIR-SO100 (#2862)
thinkaName Apr 21, 2026
123bfc6
add MultiIR contact sensor MIR_MC100 (#2867)
thinkaName Apr 21, 2026
f865fd9
add MultiIR Water Leak MIR-WA100 (#2896)
thinkaName Apr 21, 2026
ce9777b
WWSTCERT-10993 Linkind Smart Ceiling Light (#2901)
cbaumler Apr 21, 2026
a1104ec
add multiir_motion_MIR-IR100 (#2861)
thinkaName Apr 21, 2026
c3d05cf
WWSTCERT-10189 Ledvance zigbee meter plug (#2729)
LQ107 Apr 21, 2026
b913a44
Delete guest user when SetYearDaySchedule is failed (#2876)
HunsupJung Apr 21, 2026
974773e
WWSTCERT-11096 Sombra Automated Shades and Blinds (#2912)
cbaumler Apr 21, 2026
6dde90d
use clear user status for default schedule lock credential result (#2…
hcarter-775 Apr 21, 2026
8b4df1a
Fixing zigbee-switch tests for ColorTempPhysMireds
aleclorimer Apr 9, 2026
ef45380
Delete guest user when SetYearDaySchedule is failed (#2876)
HunsupJung Apr 21, 2026
5b1ef55
use clear user status for default schedule lock credential result (#2…
hcarter-775 Apr 21, 2026
973bde8
add MultiIR Smoke Detector MIR-SM200 (#2874)
thinkaName Apr 21, 2026
aa5c66a
add MultiIR Smart button MIR-SO100 (#2862)
thinkaName Apr 21, 2026
d1c2bef
add MultiIR contact sensor MIR_MC100 (#2867)
thinkaName Apr 21, 2026
dcbe713
add MultiIR Water Leak MIR-WA100 (#2896)
thinkaName Apr 21, 2026
fb40ebe
add multiir_motion_MIR-IR100 (#2861)
thinkaName Apr 21, 2026
d1a0489
WWSTCERT-10189 Ledvance zigbee meter plug (#2729)
LQ107 Apr 21, 2026
cd25371
WWSTCERT-11013 SMART WIFI MATTER WALL SWITCH 2G (#2905)
cbaumler Apr 16, 2026
14d06f7
WWSTCERT-10652 ULTRALOQ Matter Door Lock (#2889)
cbaumler Apr 10, 2026
db1a7d4
WWSTCERT-10993 Linkind Smart Ceiling Light (#2901)
cbaumler Apr 21, 2026
3d1287d
WWSTCERT-10842 ThirdReality Smart Night Light -T (#2910)
cbaumler Apr 21, 2026
a0df76d
WWSTCERT-10842 ThirdReality Smart Night Light -T (#2910)
cbaumler Apr 21, 2026
84a60d4
Fix ledvance unit tests
cjswedes Apr 22, 2026
1918c71
Merge branch 'main' into fix/ledvance-test
cjswedes Apr 22, 2026
6c7b85b
Merge pull request #2918 from SmartThingsCommunity/fix/ledvance-test
cjswedes Apr 22, 2026
bf0e08b
Add Stateless Native Handler Registration (#2914)
hcarter-775 Apr 22, 2026
5608349
CHAD-17092: zwave-sensor lazy loading of sub-drivers
aleclorimer Nov 17, 2025
709cda3
CHAD-18038: Enable single device thread
aleclorimer Apr 21, 2026
5a43981
CHAD-17163: lazy loading of matter-window-covering sub-drivers
aleclorimer Dec 16, 2025
fc60e2b
CHAD-18037: Enable shared_device_thread_enabled
aleclorimer Apr 21, 2026
aa3e513
CHAD-17087: zwave-fan lazy lading of sub-drivers
aleclorimer Nov 17, 2025
e8abbc0
CHAD-18035: Enable shared_device_thread_enabled
aleclorimer Apr 21, 2026
ca450ad
CHAD-17085: zwave-button lazy loading of sub-drivers
aleclorimer Nov 17, 2025
f97770e
CHAD-18034: Enable shared_device_thread_enabled
aleclorimer Apr 21, 2026
451b95a
CHAD-17088: zwave-garage-door-opener lazy load subdrivers
aleclorimer Nov 17, 2025
48c086c
CHAD-18036: Enable shared_device_thread_enabled
aleclorimer Apr 21, 2026
af61d35
Merge pull request #2643 from SmartThingsCommunity/zwave-garage-door-…
aleclorimer Apr 22, 2026
0ac1f3a
Merge pull request #2799 from SmartThingsCommunity/CHAD-17092-zwave-s…
aleclorimer Apr 22, 2026
e80a937
Merge pull request #2663 from SmartThingsCommunity/CHAD-17163-matter-…
aleclorimer Apr 22, 2026
928d2bf
Merge pull request #2642 from SmartThingsCommunity/zwave-fan-lazy-loa…
aleclorimer Apr 22, 2026
1568074
Merge pull request #2640 from SmartThingsCommunity/zwave-button-lazy-…
aleclorimer Apr 22, 2026
5712895
Removing pull_request and leaving pull_request_target
aleclorimer Apr 16, 2026
3e27290
Merge pull request #2907 from SmartThingsCommunity/CHAD-17613-remove-…
aleclorimer Apr 22, 2026
fa3f457
fix feature check for presence sensor device profiling (#2919)
nickolas-deboom Apr 22, 2026
1d53b8d
WWSTCERT-11060 TOFSMYGAA Plug Black/Outdoor (#2911)
cbaumler Apr 22, 2026
e62738b
WWSTCERT-11060 TOFSMYGAA Plug Black/Outdoor (#2911)
cbaumler Apr 22, 2026
5a65417
Fix ledvance unit tests
cjswedes Apr 22, 2026
f79b3d5
Add Stateless Native Handler Registration (#2915)
hcarter-775 Apr 23, 2026
d7849ae
Philips Hue: Add support for statelessSwitchLevelStep and statelessCo…
hcarter-775 Apr 23, 2026
2300a33
updates in SNZB-04PR2 and SNZB-04P fingerprints (WWSTCERT-10731, WWST…
KKlimczukS Apr 27, 2026
4e4c073
WWSTCERT-11195 Govee Smart Bulb PAR38 (#2925)
cbaumler Apr 27, 2026
a6e93dd
WWSTCERT-11168 Smart Radiator Thermostat X (#2924)
cbaumler Apr 27, 2026
d958b47
Matter/Zigbee Switch: Make transition time for stateless capabilities…
hcarter-775 Apr 28, 2026
e85bd15
Matter Switch: Use defaults bounds if any custom bound is missing (#2…
hcarter-775 Apr 28, 2026
adc9ff9
Matter Switch: use parent device for get_field calls in capability co…
hcarter-775 Apr 28, 2026
a225a2c
Add Sonoff SNZB-04PR2 (WWSTCERT-10731) and SNZB-04P (WWSTCERT-10704) …
laity-w-sudo Apr 9, 2026
c29ee38
updates in SNZB-04PR2 and SNZB-04P fingerprints (WWSTCERT-10731, WWST…
KKlimczukS Apr 27, 2026
427ccd8
WWSTCERT-11096 Sombra Automated Shades and Blinds (#2912)
cbaumler Apr 21, 2026
01edd5f
WWSTCERT-11195 Govee Smart Bulb PAR38 (#2925)
cbaumler Apr 27, 2026
3c97a54
Merge pull request #2917 from SmartThingsCommunity/beta-release/4-22
aleclorimer Apr 29, 2026
b889ef9
Matter Switch: Fix transition time in new parent/child tests (#2933)
hcarter-775 Apr 29, 2026
b42cf0d
CHAD-17566: zigbee-water-leak-sensor enable shared_device_thread
aleclorimer Apr 28, 2026
183b176
CHAD-17566: zigbee-humidity-sensor enable shared_device_thread
aleclorimer Apr 28, 2026
4f16bc5
CHAD-17566: zwave-thermostat enable shared_device_thread
aleclorimer Apr 28, 2026
d2ef6ac
CHAD-17566: zigbee-button enable shared_device_thread
aleclorimer Apr 28, 2026
8b4d80d
CHAD-17566: zigbee-thermostat enable shared_device_thread
aleclorimer Apr 28, 2026
fbde0ac
CHAD-17566: matter-energy enable shared_device_thread
aleclorimer Apr 28, 2026
7a0fd00
CHAD-17566: zwave-electric-meter enable shared_device_thread
aleclorimer Apr 28, 2026
ed4028d
CHAD-17566: zwave-switch enable shared_device_thread
aleclorimer Apr 28, 2026
d61e48a
CHAD-17566: zigbee-watering-kit enable shared_device_thread
aleclorimer Apr 28, 2026
ae23ad3
CHAD-17566: zigbee-lock enable shared_device_thread
aleclorimer Apr 28, 2026
1425d36
CHAD-17566: zwave-valve enable shared_device_thread
aleclorimer Apr 28, 2026
8a10af8
CHAD-17566: zwave-smoke-alarm enable shared_device_thread
aleclorimer Apr 28, 2026
8b21db6
CHAD-17566: zigbee-range-extender enable shared_device_thread
aleclorimer Apr 28, 2026
c7e5776
CHAD-17566: zigbee-air-quality-detector enable shared_device_thread
aleclorimer Apr 28, 2026
ab4503e
CHAD-17566: zigbee-illuminance-sensor enable shared_device_thread
aleclorimer Apr 28, 2026
14cfb09
CHAD-17566: matter-appliance enable shared_device_thread
aleclorimer Apr 28, 2026
d21c079
CHAD-17566: matter-pump enable shared_device_thread
aleclorimer Apr 28, 2026
b243985
CHAD-17566: zigbee-motion-sensor enable shared_device_thread
aleclorimer Apr 28, 2026
038ff51
CHAD-17566: matter-switch enable shared_device_thread
aleclorimer Apr 28, 2026
d669470
CHAD-17566: zigbee-valve enable shared_device_thread
aleclorimer Apr 28, 2026
2db6745
CHAD-17566: zigbee-carbon-monoxide-detector enable shared_device_thread
aleclorimer Apr 28, 2026
4e15677
CHAD-17566: zigbee-switch enable shared_device_thread
aleclorimer Apr 28, 2026
a1c48cb
CHAD-17566: zigbee-smoke-detector enable shared_device_thread
aleclorimer Apr 28, 2026
b02f6cb
CHAD-17566: zwave-siren enable shared_device_thread
aleclorimer Apr 28, 2026
953c286
CHAD-17566: zwave-lock enable shared_device_thread
aleclorimer Apr 28, 2026
1d0871e
CHAD-17566: zigbee-bed enable shared_device_thread
aleclorimer Apr 28, 2026
c6c730f
CHAD-17566: zwave-bulb enable shared_device_thread
aleclorimer Apr 28, 2026
daabdf9
CHAD-17566: zigbee-presence-sensor enable shared_device_thread
aleclorimer Apr 28, 2026
210e977
CHAD-17566: matter-sensor enable shared_device_thread
aleclorimer Apr 28, 2026
e0d42ee
CHAD-17566: zigbee-fan enable shared_device_thread
aleclorimer Apr 28, 2026
c70dbe1
CHAD-17566: zigbee-contact enable shared_device_thread
aleclorimer Apr 28, 2026
d6254b3
CHAD-17566: zigbee-dimmer-remote enable shared_device_thread
aleclorimer Apr 28, 2026
28b70d0
CHAD-17566: zigbee-power-meter enable shared_device_thread
aleclorimer Apr 28, 2026
f442058
CHAD-17566: zigbee-window-treatment enable shared_device_thread
aleclorimer Apr 28, 2026
f1a4443
CHAD-17566: zigbee-sensor enable shared_device_thread
aleclorimer Apr 28, 2026
b449802
CHAD-17566: zigbee-siren enable shared_device_thread
aleclorimer Apr 28, 2026
2132c63
CHAD-17566: zwave-window-treatment enable shared_device_thread
aleclorimer Apr 28, 2026
375e862
CHAD-17566: matter-lock enable shared_device_thread
aleclorimer Apr 28, 2026
baf07d9
Merge pull request #2929 from SmartThingsCommunity/st-protocol-handle…
aleclorimer May 4, 2026
7f042d1
Matter Lock: Re-profile a Lock if it requires an unlatch embedded con…
hcarter-775 May 4, 2026
7503f88
Revert "WWSTCERT-11168 Smart Radiator Thermostat X" (#2948)
cbaumler May 5, 2026
9687c2d
Add support for Irrigation System device type (#2684)
nickolas-deboom May 6, 2026
90c253e
Support Soil Sensor device type (#2757)
nickolas-deboom May 6, 2026
608a9ff
Merge branch 'beta' into release/beta-5-6-26
hcarter-775 May 6, 2026
51c33f1
Merge pull request #2951 from SmartThingsCommunity/release/beta-5-6-26
hcarter-775 May 6, 2026
ba2b1e3
Matter Switch: Version gate the extra init event on added (#2938)
hcarter-775 May 7, 2026
d116b07
add clear user failure test during defaultSchedule (#2950)
hcarter-775 May 7, 2026
b72fbc9
update st energy reporting interval for multi-plugs (#2803)
hcarter-775 May 7, 2026
7dc266a
IKEA BILRESA Scroll: Populate subscribed attributes key to fix refres…
nickolas-deboom May 8, 2026
a4ddf6c
WWSTCERT-11539 Smart AC Controller (#2953)
cbaumler May 8, 2026
d8f43d0
Add Allegion(Schlage) products to allowed list (#2935)
HunsupJung May 12, 2026
834b3db
Changing sha to point at pull_request.head.sha
aleclorimer May 11, 2026
36c2970
Merge pull request #2957 from SmartThingsCommunity/jenkins-driver-inv…
aleclorimer May 12, 2026
e645be8
Add support for Closure device type (#2875)
nickolas-deboom May 12, 2026
853b02b
add MultiIR Siren MIR-SR100 (#2873)
thinkaName May 12, 2026
4e5a873
Merge pull request #2966 from SmartThingsCommunity/main
cjswedes May 13, 2026
9405cda
CHAD-16991: Removed zwave-button apiv6 subdriver
aleclorimer May 13, 2026
449e279
CHAD-16991: Removed zwave-lock apiv6 subdriver
aleclorimer May 13, 2026
a80ca3d
CHAD-16991: Removed zwave-sensor apiv6 subdriver
aleclorimer May 13, 2026
d84fe48
CHAD-16991: Removed zwave-siren apiv6 subdriver
aleclorimer May 13, 2026
6480128
CHAD-16991: Removed zwave-smoke-alarm apiv6 subdriver
aleclorimer May 13, 2026
24d3505
CHAD-16991: Removed zwave-thermostat apiv6 subdriver
aleclorimer May 13, 2026
a9d9f6a
Merge pull request #2968 from SmartThingsCommunity/remove-apiv6-subdr…
aleclorimer May 14, 2026
758245b
Fix duplicate profile check to handle deleted files
nand-nor May 18, 2026
732cc20
Emit warning when profile files are deleted in PR
nand-nor May 18, 2026
67dd8a8
Merge pull request #2976 from SmartThingsCommunity/fix/ci-script-fix-…
nand-nor May 18, 2026
1607bb3
Add AGENTS.md and a set of skills to help agents in this repository
cjswedes May 15, 2026
76d6ef7
Merge pull request #2973 from SmartThingsCommunity/feat/agent-help
cjswedes May 18, 2026
5e428ad
WWSTCERT-11638 Govee Floor Lamp 3 (#2972)
cbaumler May 18, 2026
4485f2b
WWSTCERT-10701 Add Sonoff SNZB-01M Smart Scene Button into zigbee-but…
Oniums May 19, 2026
7bdbb97
WWSTCERT-9844 Aqara Smart Lock U400 (#2805)
greens May 19, 2026
e2d6a8e
Fix handling for cameras without per-zone sensitivity handling
ctowns May 12, 2026
236d4a9
Merge pull request #2965 from SmartThingsCommunity/bugfix/no-per-zone…
ctowns May 19, 2026
8c3cf23
WWSTCERT-11708 Govee Ceiling Light Pro (#2984)
cbaumler May 19, 2026
66d9df4
WWSTCERT-11719 Linkind Smart Light Bulb (#2985)
cbaumler May 19, 2026
8b1cecd
Matter Switch: remove ghost events, provision after driver switch (#2…
hcarter-775 May 19, 2026
f666489
Provision driver switch in Matter Sensor (#2981)
hcarter-775 May 19, 2026
cb154a8
Provision driver switch in Matter RVC (#2980)
hcarter-775 May 19, 2026
3015ace
Provision driver switch in Matter Lock (#2979)
hcarter-775 May 19, 2026
a80ea6f
Merge branch 'beta' into main
ctowns May 20, 2026
934dd80
Merge pull request #2987 from SmartThingsCommunity/main
ctowns May 20, 2026
5bdca1e
Matter Switch: Register setColorTemperature native handler (#2988)
hcarter-775 May 20, 2026
7997c4a
WWSTCERT-11548 Dreame NAVO Smart Lock A10 (#2963)
cbaumler May 21, 2026
f1dbe34
[Aqara] add Aqara Bath Heater T1 (#2942)
seojune79 May 21, 2026
8c953ac
add laisiao_bathheate_DG60GCM-04-2904W (#2970)
thinkaName May 22, 2026
1d6aae9
WWSTCERT-11645 Govee Uplighter Floor Lamp with Nebula Effect (#2994)
cbaumler May 22, 2026
1e2b9e8
WWSTCERT-11863 Linkind Light Stick T19 (#2996)
cbaumler May 22, 2026
dbbcc5f
Matter Switch: Register ColorTemperatureMireds native handler (#2990)
hcarter-775 May 26, 2026
da0a68c
WWSTCERT-11879 Linkind Smart Ceiling Light (#2999)
cbaumler May 26, 2026
26097e6
WWSTCERT-11914 Dreame NAVO Smart Lock E10 (#3001)
cbaumler May 26, 2026
5027388
WWSTCERT-11858 Tapo smart Power strip (#3000)
cbaumler May 26, 2026
8d9f3a7
Add BITUO TECHNIK OEM devices for the Zemismart manufacturer (#2986)
script0803 May 26, 2026
bb23ee7
min delta should be 0.0, use total if negative (#2993)
hcarter-775 May 26, 2026
9ea26b6
Merge pull request #3002 from SmartThingsCommunity/main
aleclorimer May 27, 2026
dd8ec73
WWSTCERT-11891: Linkind Smart Ceiling Light (#3004)
cbaumler May 28, 2026
dd871ed
WWSTCERT-11941 OSRAM PLANON SLIM (#3005)
cbaumler May 28, 2026
2f28b5a
Matter Camera: Prevent duplicate zones in triggeredZones report
ctowns May 29, 2026
a709fa4
Update fingerprints.lua for aqara matter lock j200 and u500
feiyeep Jun 2, 2026
5b6e514
Merge pull request #3008 from SmartThingsCommunity/bugfix/duplicate-t…
ctowns Jun 2, 2026
917bdad
Zigbee Switch: Add Stateless Step ZLL Refresh (#3006)
hcarter-775 Jun 2, 2026
2feb8bc
Merge pull request #3012 from SmartThingsCommunity/main
hcarter-775 Jun 3, 2026
268c9be
samsung-audio: guard missing UIC fields to avoid coroutine crashes
cjswedes Jun 3, 2026
90b5145
matter-lock: guard unknown lock state capability emissions
cjswedes Jun 3, 2026
b5b9a97
Fix Sinope valve scheduled battery read device context
cjswedes Jun 3, 2026
a63f5fd
Fix ZLL polling coroutine and stale device callbacks
cjswedes Jun 3, 2026
7149730
Merge pull request #3011 from Aqara-IOT/main
tpmanley Jun 4, 2026
5de3b1f
Merge pull request #3015 from SmartThingsCommunity/fix/coroutine-errors
cjswedes Jun 4, 2026
117858d
WWSTCERT-12039 Cync Smart Shop Light (#3016)
cbaumler Jun 8, 2026
efa52a6
Add `videoCapture2` to `detailView` in `deviceConfig`
samadDotDev Jun 8, 2026
42a6a23
WWSTCERT-12050 Mini Smart Wi-Fi Plug Energy Monitoring Matter (#3017)
cbaumler Jun 9, 2026
55a009f
Merge pull request #3020 from SmartThingsCommunity/main
cjswedes Jun 10, 2026
614a284
WWSTCERT-11943 Added support for Bosch Motion Detector II [+M] (#2555)
JanJakubiszyn Jun 12, 2026
26816e7
WWSTCERT-12050 Correct Mini Smart Wi-Fi Plug Matter fingerprint (#3021)
cbaumler Jun 12, 2026
09d82f7
WWSTCERT-12165 Aqara Smart Lock J200 (#3022)
cbaumler Jun 12, 2026
7de3ac6
WWSTCERT-12012 Linkind Smart Ceiling Fan (#3023)
cbaumler Jun 12, 2026
30f88ce
Merge pull request #3018 from SmartThingsCommunity/fix/videocapture2-…
samadDotDev Jun 15, 2026
79b4ee0
Isolate the eve-energy subdriver to private cluster usage (#3019)
samadDotDev Jun 15, 2026
f92f81d
Fix error when updating pin code (#3007)
HunsupJung Jun 16, 2026
f04eec5
Ledvance zigbee EM EU plug (#3009)
LQ107 Jun 16, 2026
2df9e62
Revert "WWSTCERT-12165 Aqara Smart Lock J200" (#3030)
cbaumler Jun 17, 2026
d740b1e
Matter Ikea Scroll: Aggregate multiple responses into one event, remo…
hcarter-775 Jun 17, 2026
79ecba3
Merge pull request #3032 from SmartThingsCommunity/main
ctowns Jun 17, 2026
8c73ff2
update new lifx fingerprints to include colorControl (#3034)
hcarter-775 Jun 17, 2026
b4d10a6
persist electrical tags that are used for profiling (#3038)
hcarter-775 Jun 22, 2026
fa41aa6
Add Initial FP400 profile and subdriver (#3024)
hcarter-775 Jun 22, 2026
c7fc031
add firstled-io_M4S4BAC (#2971)
thinkaName Jun 23, 2026
5f1eb23
update new lifx fingerprints to include colorControl (#3034)
hcarter-775 Jun 17, 2026
922a001
persist electrical tags that are used for profiling (#3038)
hcarter-775 Jun 22, 2026
2067aa5
Add Initial FP400 profile and subdriver (#3024)
hcarter-775 Jun 22, 2026
219c1d3
add firstled-io_M4S4BAC (#2971)
thinkaName Jun 23, 2026
ba0ed5a
add global scroll state for ikea scroll (#3039)
hcarter-775 Jun 23, 2026
ca15822
Aqara Bath Heater: localize device profiles (#3029)
seojune79 Jun 23, 2026
2ed6aab
Merge branch 'main' into beta-release/6-24-26
aleclorimer Jun 24, 2026
ecf1dee
Merge pull request #3033 from SmartThingsCommunity/prod-release-6-17-…
ctowns Jun 17, 2026
b733e86
Merge branch 'production' into prod-release-6-24-26
aleclorimer Jun 23, 2026
0f4890c
Merge remote-tracking branch 'origin/production' into prod-release-6-…
aleclorimer Jun 23, 2026
408c459
update new lifx fingerprints to include colorControl (#3034)
hcarter-775 Jun 17, 2026
1263594
Merge pull request #3045 from SmartThingsCommunity/beta-release/6-24-26
aleclorimer Jun 25, 2026
4cf4955
Merge branch 'beta' into prod-release-6-24-26
aleclorimer Jun 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
264 changes: 264 additions & 0 deletions .agents/skills/dev-workflow/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,264 @@
---
name: dev-workflow
description: Setting up the development environment, deploying Edge Drivers to hubs, and sharing drivers with other users via channels and invites
---

# SmartThings Edge Driver Development Workflow

This skill covers environment setup, driver deployment to hubs, and sharing
drivers with other users through channels and invite links.

---

## Environment Setup

### 1. Install Lua 5.3

Edge Drivers are Lua-based. Install the Lua 5.3 runtime for local development
and linting:

```bash
# Ubuntu / Debian
sudo apt install lua5.3

# macOS
brew install lua@5.3

# Windows
# Download the Lua 5.3 binary from https://luabinaries.sourceforge.net/download.html
# Or install via scoop:
scoop install lua
# Or via chocolatey:
choco install lua53
```

### 2. lua_libs Directory

The `lua_libs/` directory contains the SmartThings Lua libraries that are
available on the hub at runtime. These correspond to the assets attached to the
latest release on GitHub:

<https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/releases/latest>

Download the lua_libs archive from the release assets and
extract it into the repository root if it is missing or needs updating.

### 3. Configure LUA_PATH

Set `LUA_PATH` so that `require` resolves both your driver modules and the
SmartThings library modules in `lua_libs/`:

```bash
export LUA_PATH="./?.lua;./?/init.lua;$(pwd)/lua_libs/?.lua;$(pwd)/lua_libs/?/init.lua;;"
```

Run it from the repository root so `$(pwd)` resolves correctly.


### 4. Install the SmartThings CLI

The CLI is required for packaging, deploying, and managing drivers and
channels on the platform.

```bash
# Via npm (requires Node.js >= 24.8.0)
npm install -g @smartthings/cli

# macOS via Homebrew
brew install smartthingscommunity/smartthings/smartthings

# Linux / Windows
# Download the binary or installer from:
# https://github.com/SmartThingsCommunity/smartthings-cli/releases
```

Verify the installation:

```bash
smartthings --version
```

The CLI uses browser-based OAuth login by default. Run `smartthings devices` to trigger
the login flow.

### 5. Python Requirements (Testing)

Some test and tooling scripts require Python dependencies:

```bash
pip install -r tools/requirements.txt
```

### 6. Install Luacheck (Linting)

Luacheck provides static analysis for Lua source files. It requires LuaRocks
(the Lua package manager).

**Install LuaRocks first:**

```bash
# Ubuntu / Debian
sudo apt install luarocks

# macOS
brew install luarocks

# Windows
# Download the installer from https://luarocks.org/releases/
# Or via chocolatey:
choco install luarocks
```

**Then install Luacheck:**

```bash
# Via LuaRocks (all platforms)
luarocks install luacheck

# macOS alternative (installs both luarocks and luacheck)
brew install luacheck
```

Run it against a driver directory:

```bash
luacheck --config .github/workflows/.luacheckrc drivers/SmartThings/zigbee-switch/
```

---

## Deploying Drivers

### Overview

Deploying a driver to a physical hub requires three things:

1. A **channel** you own.
2. The hub **enrolled** in that channel.
3. The driver **packaged and uploaded** through the CLI.

### Step 1: Create a Channel

```bash
smartthings edge:channels:create
```

You will be prompted for a name and description. Note the returned channel ID.

### Step 2: Enroll Your Hub

```bash
smartthings edge:channels:enroll <hub-id>
```

Select the channel when prompted, or pass `--channel <channel-id>`.

Find your hub ID with:

```bash
smartthings devices --type HUB
```

### Step 3: Package and Install the Driver

The `edge:drivers:package` command can build, upload, assign to a channel, and
install in one step:

```bash
smartthings edge:drivers:package <path-to-driver-dir> \
--hub=<hub-uuid> \
--channel=<channel-id>
```

For example:

```bash
smartthings edge:drivers:package drivers/SmartThings/zwave-switch \
--hub=aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee \
--channel=11111111-2222-3333-4444-555555555555
```

### Other Useful Deployment Commands

```bash
# List drivers installed on a hub
smartthings edge:drivers:installed --hub=<hub-uuid>

# Stream logs from a driver on the hub
smartthings edge:drivers:logcat <driver-id> --hub=<hub-uuid>

# Uninstall a driver from a hub
smartthings edge:drivers:uninstall <driver-id> --hub=<hub-uuid>

# Remove unused drivers from a hub
smartthings edge:drivers:prune --hub=<hub-uuid>

# Switch a device to a different driver
smartthings edge:drivers:switch <device-id>
```

---

## Sharing Drivers

### Creating an Invite Link

Invite links let other users install your driver from your channel without
giving them ownership of the driver or channel.

```bash
smartthings edge:channels:invites:create
```

You will be prompted to select a channel and a driver. The command returns an
invite URL of the form:

```
https://bestow-regional.api.smartthings.com/invite/<invite-id>
```

Share this URL with users. They open it in a browser or the SmartThings mobile
app to accept the invitation.

### Enrollment Flow for Recipients

1. The recipient opens the invite link.
2. They log in to their Samsung / SmartThings account.
3. They select a hub to enroll in the channel.
4. The driver can be selected to install to that hub.

### Managing Invites

```bash
# List existing invites
smartthings edge:channels:invites

# Delete an invite
smartthings edge:channels:invites:delete <invite-id>
```

### Managing Channel Assignments

```bash
# Assign a specific driver version to a channel
smartthings edge:channels:assign <driver-id> <version>

# List drivers assigned to a channel
smartthings edge:channels:drivers <channel-id>

# Remove a driver from a channel
smartthings edge:channels:unassign <driver-id>
```

---

## Quick Reference

| Task | Command |
|------|---------|
| Create channel | `smartthings edge:channels:create` |
| Enroll hub | `smartthings edge:channels:enroll <hub-id>` |
| Package & deploy | `smartthings edge:drivers:package <dir> --hub=<id> --channel=<id>` |
| Stream logs | `smartthings edge:drivers:logcat <driver-id> --hub=<id>` |
| Create invite | `smartthings edge:channels:invites:create` |
| List installed drivers | `smartthings edge:drivers:installed --hub=<id>` |
96 changes: 96 additions & 0 deletions .agents/skills/linting-and-style/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
---
name: linting-and-style
description: Running luacheck for Lua linting and following code style conventions in Edge Driver development
---

# Linting and Code Style for Edge Drivers

## Running Luacheck

```bash
luacheck --config .github/workflows/.luacheckrc <path>
```

### Examples

```bash
# Lint a specific driver
luacheck --config .github/workflows/.luacheckrc drivers/SmartThings/zigbee-switch/

# Lint a single file
luacheck --config .github/workflows/.luacheckrc drivers/SmartThings/zigbee-switch/src/init.lua

# Lint the entire repo
luacheck --config .github/workflows/.luacheckrc .
```

Luacheck runs automatically in CI on pull requests that modify files under `drivers/` (see `.github/workflows/luacheck.yml`).

## Code Style Conventions

These conventions are observed across the Edge Driver codebase:

### General

- **Indentation**: 2 spaces, no tabs
- **Strings**: Use double quotes `"string"` for module requires and general strings
- **Local variables**: Always use `local` for variables and functions at module scope
- **Line length**: No enforced limit, but most code stays under 120 characters

### Naming

- **Variables and functions**: `snake_case` (e.g., `local mock_device`, `local function test_init()`)
- **Constants**: `UPPER_SNAKE_CASE` for true constants (e.g., `SENSOR_BINARY`)
- **Modules**: Return a table at the end of the file (`return module_name`)

### Requires and Imports

```lua
-- Standard library requires first
local capabilities = require "st.capabilities"
local zw = require "st.zwave"

-- Then test/integration requires
local test = require "integration_test"
local t_utils = require "integration_test.utils"

-- Then protocol-specific requires
local SensorBinary = (require "st.zwave.CommandClass.SensorBinary")({ version = 2 })
```

### Function Style

- Prefer `local function name()` over `local name = function()`
- Handler functions typically receive `(driver, device, ...)` arguments
- Use early returns for guard clauses

### Tables

- Trailing commas are common and acceptable in multi-line tables
- Align table entries for readability in test manifests

### Comments

- Use `--` for single-line comments
- Minimal inline comments; code should be self-documenting

Copyright header at the top of every file:
```lua
-- Copyright 2026 SmartThings, Inc.
-- Licensed under the Apache License, Version 2.0
```

### File Organization for Drivers

```
driver-name/
src/
init.lua -- Main driver entry point
<sub_modules>.lua -- Additional driver modules
test/
test_*.lua -- Test files (must start with test_)
profiles/
*.yml -- Device profiles
fingerprints.yml -- Device fingerprints
config.yml -- Driver configuration
```
Loading
Loading