Browse Source

Add support for Moes Smart control panel

Issue #2396
Jason Rumney 1 year ago
parent
commit
4478fe01ad
3 changed files with 173 additions and 0 deletions
  1. 1 0
      ACKNOWLEDGEMENTS.md
  2. 1 0
      DEVICES.md
  3. 171 0
      custom_components/tuya_local/devices/moes_controlpanel.yaml

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -717,3 +717,4 @@ Further device support has been made with the assistance of users. Please consid
 - [bvandenbogaard](https://github.com/bvandenbogaard) for contributing support for Medion S10 SW robot vacuum.
 - [bvandenbogaard](https://github.com/bvandenbogaard) for contributing support for Medion S10 SW robot vacuum.
 - [fotis3d](https://github.com/fotis3d) for assisting with support for Digoo HamB alarm.
 - [fotis3d](https://github.com/fotis3d) for assisting with support for Digoo HamB alarm.
 - [Igooris](https://github.com/Igooris) for contributing support for PZIOT E01 energy meter.
 - [Igooris](https://github.com/Igooris) for contributing support for PZIOT E01 energy meter.
+- [shadowkora](https://github.com/shadowkora) for assisting with support for Moes Smart control panel mini IR/Bluetooth hub.

+ 1 - 0
DEVICES.md

@@ -777,6 +777,7 @@ port and password.
 
 
 - Arlec HUBRF06HA RF 8x8 learning remote transmitter
 - Arlec HUBRF06HA RF 8x8 learning remote transmitter
 - Moes IR/RF remote controller (also IR controller pro, may work only for IR)
 - Moes IR/RF remote controller (also IR controller pro, may work only for IR)
+- Moes touchscreen control panel mini with IR remote and Bluetooth sigmesh hub
 - Universal remote control with temperature and humidity sensors
 - Universal remote control with temperature and humidity sensors
 - S11+ IR/RF remote controller
 - S11+ IR/RF remote controller
 
 

+ 171 - 0
custom_components/tuya_local/devices/moes_controlpanel.yaml

@@ -0,0 +1,171 @@
+name: Control hub
+products:
+  - id: z1fcxdrpiazyjaky
+    name: Moes CCP-S01-EU-WH-EN touchscreen control panel IR and Bluetooth hub
+primary_entity:
+  entity: switch
+  name: Switch 1
+  dps:
+    - id: 16
+      type: boolean
+      name: switch
+      # up channel is defined as read-only, down_channel as write only.
+      # this seems wrong, but they are in an undocumented "raw" format,
+      # so anyway difficult to support
+    - id: 1
+      type: string
+      optional: true
+      name: up_channel
+    - id: 2
+      type: string
+      optional: true
+      name: down_channel
+secondary_entities:
+  - entity: switch
+    name: Switch 2
+    dps:
+      - id: 17
+        type: boolean
+        name: switch
+  - entity: switch
+    name: Switch 3
+    dps:
+      - id: 3
+        type: boolean
+        name: switch
+  - entity: light
+    class: backlight
+    category: config
+    dps:
+      - id: 36
+        type: boolean
+        name: switch
+  - entity: select
+    name: Indicator
+    icon: "mdi:led-on"
+    category: config
+    dps:
+      - id: 37
+        type: string
+        name: option
+        mapping:
+          - dps_val: none
+            value: "Off"
+          - dps_val: relay
+            value: State
+          - dps_val: pos
+            value: Position
+  - entity: select
+    translation_key: initial_state
+    category: config
+    dps:
+      - id: 38
+        type: string
+        name: option
+        mapping:
+          - dps_val: "off"
+            value: "off"
+          - dps_val: "on"
+            value: "on"
+          - dps_val: memory
+            value: memory
+  - entity: select
+    name: Initial state 1
+    translation_key: initial_state
+    category: config
+    dps:
+      - id: 39
+        type: string
+        name: option
+        mapping:
+          - dps_val: "off"
+            value: "off"
+          - dps_val: "on"
+            value: "on"
+          - dps_val: memory
+            value: memory
+  - entity: select
+    name: Initial state 2
+    translation_key: initial_state
+    category: config
+    dps:
+      - id: 40
+        type: string
+        name: option
+        mapping:
+          - dps_val: "off"
+            value: "off"
+          - dps_val: "on"
+            value: "on"
+          - dps_val: memory
+            value: memory
+  - entity: select
+    name: Initial state 3
+    translation_key: initial_state
+    category: config
+    dps:
+      - id: 41
+        type: string
+        name: option
+        mapping:
+          - dps_val: "off"
+            value: "off"
+          - dps_val: "on"
+            value: "on"
+          - dps_val: memory
+            value: memory
+  - entity: remote
+    dps:
+      - id: 201
+        type: string
+        optional: true
+        name: send
+      - id: 202
+        type: string
+        optional: true
+        name: receive
+  - entity: number
+    name: Voice volume
+    category: config
+    icon: "mdi:volume-high"
+    dps:
+      - id: 203
+        type: integer
+        optional: true
+        name: value
+        unit: "%"
+        range:
+          min: 0
+          max: 100
+  - entity: switch
+    name: Mic enable
+    category: config
+    dps:
+      - id: 204
+        type: boolean
+        optional: true
+        name: switch
+  - entity: button
+    name: Voice play
+    category: config
+    dps:
+      - id: 205
+        type: boolean
+        name: button
+        optional: true
+      - id: 207
+        type: string
+        optional: true
+        name: alarm_clock
+      - id: 208
+        type: string
+        optional: true
+        name: control_group
+  - entity: button
+    name: Voice Bluetooth play
+    category: config
+    dps:
+      - id: 206
+        type: boolean
+        name: button
+        optional: true