Просмотр исходного кода

Add support for BSTUOKEY access control keypads

Issue #1152
Jason Rumney 2 лет назад
Родитель
Сommit
d518d8d8ea
3 измененных файлов с 144 добавлено и 1 удалено
  1. 1 1
      ACKNOWLEDGEMENTS.md
  2. 1 0
      DEVICES.md
  3. 142 0
      custom_components/tuya_local/devices/bstuokey_access_keypad.yaml

+ 1 - 1
ACKNOWLEDGEMENTS.md

@@ -382,4 +382,4 @@ Further device support has been made with the assistance of users.  Please consi
 - [mastermind85](https://github.com/mastermind85) for assisting with support for MC6 thermostats.
 - [BettySwallocks](https://github.com/BettySwallocks) for assisting with support for Advanced Fires 1500 electric fireplaces.
 - [Striiter](https://github.com/Stritter) for assisting with support for Feyree EV chargers.
-- [mprobber](https://github.com/mprobber) for assisting with support for Sunbeam dual heated matress pads.
+- [mprobber](https://github.com/mprobber) for assisting with support for Sunbeam dual heated matress pads and BSTUOKEY access control keypads.

+ 1 - 0
DEVICES.md

@@ -434,6 +434,7 @@ of device.
 
 ### Locks
 
+- BSTUOKEY access control keypad
 - Lucking HF06 smart lock
 - Orion Grid Connect smart lock
 

+ 142 - 0
custom_components/tuya_local/devices/bstuokey_access_keypad.yaml

@@ -0,0 +1,142 @@
+name: Access control keypad
+products:
+  - id: 5k8h97qska6pf5cm
+    name: BSTUOKEY keypad
+primary_entity:
+  entity: lock
+  dps:
+    - id: 104
+      type: boolean
+      name: lock
+      mapping:
+        - dps_val: true
+          value: false
+        - dps_val: false
+          value: true
+    - id: 10
+      type: string
+      optional: true
+      persist: false
+      name: unlock_fingerprint
+    - id: 11
+      type: string
+      optional: true
+      persist: false
+      name: unlock_password
+    - id: 12
+      type: string
+      optional: true
+      persist: false
+      name: unlock_card
+    - id: 16
+      type: string
+      optional: true
+      persist: false
+      name: unlock_temp_pwd
+    - id: 17
+      type: string
+      optional: true
+      persist: false
+      name: unlock_offline_pwd
+    - id: 23
+      type: string
+      optional: true
+      name: alarm_record
+secondary_entities:
+  - entity: number
+    name: Doorbell volume
+    icon: "mdi:bell"
+    category: config
+    dps:
+      - id: 26
+        type: string
+        name: value
+        unit: "%"
+        range:
+          min: 0
+          max: 100
+        mapping:
+          - dps_val: mute
+            value: 0
+            step: 33
+          - dps_val: low
+            value: 33
+            step: 33
+          - dps_val: middle
+            value: 67
+            step: 33
+          - dps_val: high
+            value: 100
+            step: 33
+      - id: 24
+        type: string
+        optional: true
+        name: tune
+  - entity: switch
+    name: Auto lock
+    icon: "mdi:lock-reset"
+    category: config
+    dps:
+      - id: 30
+        type: boolean
+        name: switch
+  - entity: number
+    name: Auto lock time
+    category: config
+    icon: "mdi:lock-reset"
+    dps:
+      - id: 31
+        type: integer
+        name: value
+        unit: s
+        range:
+          min: 1
+          max: 99
+  - entity: number
+    name: Alarm timeout
+    category: config
+    icon: "mdi:alarm"
+    dps:
+      - id: 34
+        type: integer
+        name: value
+        unit: s
+        range:
+          min: 0
+          max: 180
+        mapping:
+          - step: 10
+  - entity: binary_sensor
+    name: Doorbell
+    class: sound
+    dps:
+      - id: 101
+        type: boolean
+        name: sensor
+  - entity: switch
+    name: Beep on error
+    category: config
+    dps:
+      - id: 102
+        type: boolean
+        name: switch
+  - entity: binary_sensor
+    class: tamper
+    category: diagnostic
+    dps:
+      - id: 103
+        type: boolean
+        name: sensor
+        optional: true
+        mapping:
+          - dps_val: null
+            value: false
+  - entity: binary_sensor
+    class: door
+    category: diagnostic
+    dps:
+      - id: 105
+        type: boolean
+        optional: true
+        name: sensor
+