Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
7623c0f
Matter Sensor: add temp/humidity offset preferences to profiles
ctowns Dec 13, 2024
7a5f7aa
Submit PR Test
zhouchengyu-cell Dec 27, 2024
2577411
modified cn.csv and fingerprints (#1841)
xiaoming-su Dec 27, 2024
c2e2a37
Add device WISTAR WSERD30-B Smart Tubular Motor (#1836)
zhouchengyu-cell Dec 30, 2024
5c5f485
Add devices WISTAR WSER50 Smart Tubular Motor (#1838)
zhouchengyu-cell Dec 30, 2024
8a260c4
Add devices WISTAR WSER40 Smart Tubular Motor (#1837)
zhouchengyu-cell Dec 30, 2024
15c6606
Fix thermostat bitmap typo in Matter Thermostat
hcarter-775 Dec 30, 2024
1b94cf8
Fix wistar fingerprint location
greens Dec 30, 2024
7fd2e7b
Merge pull request #1846 from SmartThingsCommunity/fixup/wistar
greens Dec 30, 2024
aebfa31
Add Unlatch command and Unlatched status (Unbolt feature) (#1756)
HunsupJung Jan 2, 2025
f4cefe9
Change use of the EnergyExported attribute to EnergyImported in matte…
hcarter-775 Jan 4, 2025
ae32825
Update matter-lock driver for U-tec (#1812)
HunsupJung Jan 7, 2025
0a020b4
Use PPB for TVOC measurement units (#1852)
nickolas-deboom Jan 8, 2025
6e4ec75
Adding 4 new fingerprints, moving AiDot. (#1855)
lelandblue Jan 9, 2025
22f9bcb
update all actions/upload-artifacts ocurrances to v4 (#1858)
hcarter-775 Jan 9, 2025
3743756
[Bar 300] Issues - device don't operate about 'stop' command (#1797)
cchillerr Jan 9, 2025
5ee4142
Fix minor fingerprint formatting issue (#1859)
nickolas-deboom Jan 10, 2025
686bd72
Add eufy E30 and E31 to new-matter-lock driver (#1854)
HunsupJung Jan 13, 2025
feeee96
Add eufy C34 to new-matter-lock driver (#1851)
HunsupJung Jan 13, 2025
cddbdae
New Devices (Matter Lock) Nuki (#1857)
lelandblue Jan 13, 2025
1e7eec4
Merge pull request #1823 from SmartThingsCommunity/CHAD-14584-matter-…
ctowns Jan 13, 2025
4dcce6d
Revert "[Bar 300] Issues - device don't operate about 'stop' command …
lelandblue Jan 13, 2025
ad6cc1c
Merge pull request #1866 from SmartThingsCommunity/revert-jbl
cjswedes Jan 13, 2025
0f03646
Reapply "[Bar 300] Issues - device don't operate about 'stop' command…
cjswedes Jan 17, 2025
78ed039
Matter Switch: Improve color temp boundary logic (#1827)
nickolas-deboom Jan 21, 2025
a8aa597
Add Aqara Light Switch H2 (#1822)
DongHoon-Ryu Jan 22, 2025
a8db39b
Fix matter lock test broken by lua libs update (#1889)
nickolas-deboom Jan 22, 2025
69c67ee
Add Aqara Climate Sensor W100 (#1843)
DongHoon-Ryu Jan 23, 2025
b80489f
test-pr-commit
zhouchengyu-cell Jan 24, 2025
5abc246
Merge branch 'test' of https://github.com/zhouchengyu-cell/SmartThing…
zhouchengyu-cell Jan 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/duplicate-profiles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
python ./.github/scripts/check_duplicates.py

- name: Upload duplicate profile comment artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: duplicate_profile_comment
path: |
Expand All @@ -40,7 +40,7 @@ jobs:
- run: echo ${{ github.event.number }} > pr_number.txt

- name: Upload PR info
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: pr_number
path: |
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -139,14 +139,14 @@ jobs:
LUA_PATH: ${{ steps.lua_path.outputs.lua_path }}
- name: Upload test artifact
if: always()
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: tests
path: |
tools/test_output/*.xml
- name: Upload coverage artifact
if: always()
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: coverage
path: |
Expand All @@ -156,13 +156,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Upload event file artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: event-file
path: ${{ github.event_path }}
- run: echo ${{ github.event.number }} > pr_number.txt
- name: Upload pr number artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: pr_number
path: |
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/upload-driver-packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
run: |
zip -v ${{env.package_key}}.zip config.yml fingerprints.yml search-parameters.y*ml $(find . -name "*.pem") $(find . -name "*.crt") $(find profiles -name "*.y*ml") $(find . -name "*.lua") -x "*test*"
- name: Upload packaged driver artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ${{ env.package_key }}
path: |
Expand All @@ -51,14 +51,14 @@ jobs:
steps:
- run: echo ${{ github.event.number }} > pr_number.txt
- name: Upload pr number artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: pr_number
path: |
pr_number.txt
- run: echo ${{ github.head_ref }} > head_ref.txt
- name: Upload head ref artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: head_ref
path: |
Expand Down
5 changes: 5 additions & 0 deletions drivers/SmartThings/TEST/open.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#include
1
2
3
main
2 changes: 2 additions & 0 deletions drivers/SmartThings/TEST/test.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#include <stdio.h>

2 changes: 0 additions & 2 deletions drivers/SmartThings/jbl/profiles/jbl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,10 @@ components:
enabledValues:
- 'playing'
- 'paused'
- 'stopped'
- key: "{{enumCommands}}"
enabledValues:
- 'play'
- 'pause'
- 'stop'
- id: mediaTrackControl
version: 1
- id: audioMute
Expand Down
11 changes: 10 additions & 1 deletion drivers/SmartThings/jbl/src/init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,16 @@ local function device_init(driver, device)

refresh(driver, device, nil)
device:set_field(fields._INIT, true, { persist = false })

device:emit_event(capabilities.mediaPlayback.supportedPlaybackCommands({
capabilities.mediaPlayback.commands.play.NAME,
capabilities.mediaPlayback.commands.pause.NAME,
}))

device:emit_event(capabilities.mediaTrackControl.supportedTrackControlCommands({
capabilities.mediaTrackControl.commands.nextTrack.NAME,
capabilities.mediaTrackControl.commands.previousTrack.NAME,
}))
end

local lan_driver = Driver("jbl",
Expand All @@ -204,7 +214,6 @@ local lan_driver = Driver("jbl",
[capabilities.mediaPlayback.ID] = {
[capabilities.mediaPlayback.commands.play.NAME] = jbl_capability_handler.playback_play_handler,
[capabilities.mediaPlayback.commands.pause.NAME] = jbl_capability_handler.playback_pause_handler,
[capabilities.mediaPlayback.commands.stop.NAME] = jbl_capability_handler.playback_stop_handler,
},
[capabilities.audioNotification.ID] = {
[capabilities.audioNotification.commands.playTrack.NAME] = jbl_capability_handler.audioNotification_handler,
Expand Down
3 changes: 2 additions & 1 deletion drivers/SmartThings/jbl/src/jbl/api.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ local log = require "log"
local json = require "st.json"
local RestClient = require "lunchbox.rest"
local utils = require "utils"
local st_utils = require "st.utils"
local cosock = require "cosock"

local jbl_api = {}
Expand Down Expand Up @@ -68,7 +69,7 @@ function jbl_api.new_device_manager(bridge_ip, bridge_info, socket_builder)

return setmetatable(
{
headers = ADDITIONAL_HEADERS,
headers = st_utils.deep_copy(ADDITIONAL_HEADERS),
client = RestClient.new(base_url, socket_builder),
base_url = base_url,
}, jbl_api
Expand Down
5 changes: 0 additions & 5 deletions drivers/SmartThings/jbl/src/jbl/capability_handler.lua
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ local function smartthings_playback_capability_handler(driver, device, capabilit
local st_status_to_jbl_playback_status_table = {
paused = "pause",
playing = "play",
stopped = "stop",
}

local conn_info = device:get_field(fields.CONN_INFO)
Expand All @@ -34,10 +33,6 @@ function capability_handler.playback_pause_handler(driver, device, args)
smartthings_playback_capability_handler(driver, device, "paused")
end

function capability_handler.playback_stop_handler(driver, device, args)
smartthings_playback_capability_handler(driver, device, "stopped")
end

function capability_handler.next_track_handler(driver, device, args)
local conn_info = device:get_field(fields.CONN_INFO)
log.info(string.format("media_track_control.next_track_handler : dni = %s", device.device_network_id))
Expand Down
1 change: 0 additions & 1 deletion drivers/SmartThings/jbl/src/jbl/device_manager.lua
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ end
local jbl_playback_state_to_smartthings_playback_status_table = {
paused = "paused",
playing = "playing",
stopped = "stopped",
}

function device_manager.handle_status(driver, device, status)
Expand Down
1 change: 1 addition & 0 deletions drivers/SmartThings/lan-devices/stse-edge-lan-hub-example
Submodule stse-edge-lan-hub-example added at e21632
24 changes: 17 additions & 7 deletions drivers/SmartThings/matter-lock/fingerprints.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,21 +22,31 @@ matterManufacturer:
productId: 0x0003
deviceProfileName: lock-nocodes-notamper-batteryLevel
#Nuki
- id: "Nuki Smart Lock Pro"
deviceLabel: Nuki Smart Lock Pro
vendorId: 0x135d
productId: 0xb1
- id: "4957/161"
deviceLabel: Nuki Smart Lock Ultra
vendorId: 0x135D
productId: 0x00A1
deviceProfileName: lock-nocodes-notamper
- id: "Nuki Smart Lock"
deviceLabel: Nuki Smart Lock
vendorId: 0x135d
productId: 0xb0
deviceProfileName: lock-nocodes-notamper
- id: "4957/161"
deviceLabel: Nuki Smart Lock Ultra
- id: "Nuki Smart Lock Pro"
deviceLabel: Nuki Smart Lock Pro
vendorId: 0x135d
productId: 0xb1
deviceProfileName: lock-nocodes-notamper
- id: "4957/178"
deviceLabel: Nuki Smart Lock Pro
vendorId: 0x135D
productId: 0x00A1
productId: 0x00B2
deviceProfileName: lock-nocodes-notamper
- id: "4957/193"
deviceLabel: Nuki Smart Lock Go
vendorId: 0x135D
productId: 0x00C1
deviceProfileName: lock-nocodes-notamper
matterGeneric:
- id: "matter/door-lock"
deviceLabel: Matter Door Lock
Expand Down
93 changes: 93 additions & 0 deletions drivers/SmartThings/matter-lock/profiles/lock-unlatch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
name: lock-unlatch
components:
- label: Main
id: main
capabilities:
- id: lock
version: 1
config:
values:
- key: "lock.value"
enabledValues:
- locked
- unlocked
- unlatched
- not fully locked
- id: lockAlarm
version: 1
- id: remoteControlStatus
version: 1
- id: firmwareUpdate
version: 1
- id: refresh
version: 1
categories:
- name: SmartLock
deviceConfig:
dashboard:
states:
- component: main
capability: lock
version: 1
actions:
- component: main
capability: lock
version: 1
detailView:
- component: main
capability: lock
version: 1
values:
- key: lock.value
alternatives:
- key: locked
type: inactive
value: '{{i18n.attributes.lock.i18n.value.locked.label}}'
- key: unlocked
value: '{{i18n.attributes.lock.i18n.value.unlocked.label}}'
- key: unlatched
value: '{{i18n.attributes.lock.i18n.value.unlatched.label}}'
- key: not fully locked
value: '{{i18n.attributes.lock.i18n.value.not fully locked.label}}'
patch:
- op: add
path: /1
value:
capability: lock
version: 1
component: main
label: '{{i18n.commands.unlatch.label}}'
displayType: pushButton
pushButton:
command: unlatch
automation:
conditions:
- component: main
capability: lock
version: 1
values:
- key: lock.value
alternatives:
- key: locked
type: inactive
value: '{{i18n.attributes.lock.i18n.value.locked.label}}'
- key: unlocked
value: '{{i18n.attributes.lock.i18n.value.unlocked.label}}'
- key: unlatched
value: '{{i18n.attributes.lock.i18n.value.unlatched.label}}'
- key: not fully locked
value: '{{i18n.attributes.lock.i18n.value.not fully locked.label}}'
actions:
- component: main
capability: lock
version: 1
values:
- key: '{{enumCommands}}'
alternatives:
- key: lock
type: inactive
value: '{{i18n.commands.lock.label}}'
- key: unlock
value: '{{i18n.commands.unlock.label}}'
- key: unlatch
value: '{{i18n.commands.unlatch.label}}'
29 changes: 29 additions & 0 deletions drivers/SmartThings/matter-lock/profiles/lock-user-pin-battery.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: lock-user-pin-battery
components:
- id: main
capabilities:
- id: lock
version: 1
config:
values:
- key: "lock.value"
enabledValues:
- locked
- unlocked
- not fully locked
- id: lockAlarm
version: 1
- id: remoteControlStatus
version: 1
- id: lockUsers
version: 1
- id: lockCredentials
version: 1
- id: battery
version: 1
- id: firmwareUpdate
version: 1
- id: refresh
version: 1
categories:
- name: SmartLock
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: lock-user-pin-batteryLevel
components:
- id: main
capabilities:
- id: lock
version: 1
config:
values:
- key: "lock.value"
enabledValues:
- locked
- unlocked
- not fully locked
- id: lockAlarm
version: 1
- id: remoteControlStatus
version: 1
- id: lockUsers
version: 1
- id: lockCredentials
version: 1
- id: batteryLevel
version: 1
- id: firmwareUpdate
version: 1
- id: refresh
version: 1
categories:
- name: SmartLock
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: lock-user-pin-schedule-battery
components:
- id: main
capabilities:
- id: lock
version: 1
config:
values:
- key: "lock.value"
enabledValues:
- locked
- unlocked
- not fully locked
- id: lockAlarm
version: 1
- id: remoteControlStatus
version: 1
- id: lockUsers
version: 1
- id: lockCredentials
version: 1
- id: lockSchedules
version: 1
- id: battery
version: 1
- id: firmwareUpdate
version: 1
- id: refresh
version: 1
categories:
- name: SmartLock
Loading