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

Add support for Momland/Loycco sound machine nightlight

Issue #1042
Jason Rumney 2 лет назад
Родитель
Сommit
407614edcb
3 измененных файлов с 261 добавлено и 2 удалено
  1. 1 2
      ACKNOWLEDGEMENTS.md
  2. 1 0
      DEVICES.md
  3. 259 0
      custom_components/tuya_local/devices/loycco_sound_nightlight.yaml

+ 1 - 2
ACKNOWLEDGEMENTS.md

@@ -350,5 +350,4 @@ Further device support has been made with the assistance of users.  Please consi
 - [pdecat](https://github.com/pdecat) for assisting with support for Blumfeldt Cosmic Beam radiant heaters and Pearl Xystec USB hub (quad_power_timer).
 - [andr2000](https://github.com/andr2000) for assisting with support for Abir X8 vacuums.
 - [MaximeNagel](https://github.com/MaximeNagel) for assisting with support for ZG-205W mmWave presence sensors.
-
-
+- [Ilyapempel](https://github.com/Ilyapempel) for assisting with support for Momland/Loycco sound machine nightlights, and Kojima motion sensor RGBCW nightlight.

+ 1 - 0
DEVICES.md

@@ -346,6 +346,7 @@ of device.
 - Galaxy Projector
 - HDMI sync light
 - iHD001 LED controller
+- Loycco sound machine with nightlight (also sold as Momland nightlight with white noise)
 - Loginovo TV sync backlight
 - Lytmi Fantasy/Neo 3 HDMI sync backlight
 - Marpou RGBCW ceiling light

+ 259 - 0
custom_components/tuya_local/devices/loycco_sound_nightlight.yaml

@@ -0,0 +1,259 @@
+name: Sound machine nightlight
+products:
+  - id:
+    name: Momland nightlight with white noise
+primary_entity:
+  entity: light
+  dps:
+    - id: 3
+      type: boolean
+      name: switch
+    - id: 2
+      name: color_mode
+      type: string
+      mapping:
+        - dps_val: white
+          value: white
+        - dps_val: colour
+          value: hs
+        - dps_val: scene
+          value: Scene
+        - dps_val: customize_scene
+          value: Custom Scene
+        - dps_val: null
+          value: white
+          hidden: true
+      optional: true
+    - id: 6
+      name: brightness
+      type: integer
+      range:
+        min: 10
+        max: 1000
+      mapping:
+        - scale: 3.92
+    - id: 5
+      name: rgbhsv
+      type: hex
+      format:
+        - name: h
+          bytes: 2
+          range:
+            min: 0
+            max: 360
+        - name: s
+          bytes: 2
+          range:
+            min: 0
+            max: 1000
+        - name: v
+          bytes: 2
+          range:
+            min: 0
+            max: 1000
+secondary_entities:
+  - entity: switch
+    name: Power
+    icon: "mdi:power-standby"
+    category: config
+    dps:
+      - id: 1
+        type: boolean
+        name: switch
+        optional: true
+        mapping:
+          - dps_val: null
+            value: false
+            hidden: true
+  - entity: select
+    name: Light mode
+    icon: "mdi:lightbulb-question"
+    category: config
+    dps:
+      - id: 4
+        type: string
+        name: option
+        mapping:
+          - dps_val: breath
+            value: Breathing
+          - dps_val: light_on
+            value: Steady On
+          - dps_val: light_off
+            value: "Off"
+          - dps_val: change
+            value: Random
+  - entity: siren
+    name: Sound
+    icon: "mdi:music"
+    dps:
+      - id: 8
+        name: switch
+        type: boolean
+      - id: 9
+        name: volume_level
+        type: integer
+        range:
+          min: 10
+          max: 100
+        mapping:
+          - scale: 100
+      - id: 10
+        name: tone
+        type: string
+        mapping:
+          - dps_val: "1"
+            value: "Track 1"
+          - dps_val: "2"
+            value: "Track 2"
+          - dps_val: "3"
+            value: "Track 3"
+          - dps_val: "4"
+            value: "Track 4"
+          - dps_val: "5"
+            value: "Track 5"
+          - dps_val: "6"
+            value: "Track 6"
+          - dps_val: "7"
+            value: "Track 7"
+          - dps_val: "8"
+            value: "Track 8"
+          - dps_val: "9"
+            value: "Track 9"
+          - dps_val: "10"
+            value: "Track 10"
+          - dps_val: "11"
+            value: "Track 11"
+          - dps_val: "12"
+            value: "Track 12"
+          - dps_val: "13"
+            value: "Track 13"
+          - dps_val: "14"
+            value: "Track 14"
+          - dps_val: "15"
+            value: "Track 15"
+          - dps_val: "16"
+            value: "Track 16"
+          - dps_val: "17"
+            value: "Track 17"
+          - dps_val: "18"
+            value: "Track 18"
+          - dps_val: "19"
+            value: "Track 19"
+          - dps_val: "20"
+            value: "Track 20"
+          - dps_val: "21"
+            value: "Track 21"
+          - dps_val: "22"
+            value: "Track 22"
+          - dps_val: "23"
+            value: "Track 23"
+          - dps_val: "24"
+            value: "Track 24"
+          - dps_val: "25"
+            value: "Track 25"
+          - dps_val: "26"
+            value: "Track 26"
+          - dps_val: "27"
+            value: "Track 27"
+          - dps_val: "28"
+            value: "Track 28"
+          - dps_val: "29"
+            value: "Track 29"
+          - dps_val: "30"
+            value: "Track 30"
+          - dps_val: "31"
+            value: "Track 31"
+          - dps_val: "32"
+            value: "Track 32"
+          - dps_val: "33"
+            value: "Track 33"
+          - dps_val: "34"
+            value: "Track 34"
+      - id: 20
+        name: duration
+        type: integer
+        unit: "min"
+        range:
+          min: 0
+          max: 90
+  - entity: select
+    name: Sound source
+    icon: "mdi:music-box-multiple"
+    category: config
+    dps:
+      - id: 11
+        type: string
+        name: option
+        optional: true
+        mapping:
+          - dps_val: ringtone_1
+            value: Album 1
+          - dps_val: ringtone_2
+            value: Album 2
+          - dps_val: ringtone_3
+            value: Album 3
+          - dps_val: ringtone_4
+            value: Album 4
+          - dps_val: null
+            value: Default
+            hidden: true
+  - entity: select
+    name: Scene
+    icon: "mdi:palette"
+    category: config
+    dps:
+      - id: 12
+        type: string
+        name: option
+        optional: true
+        mapping:
+          - dps_val: wake_up
+            value: Wake up
+          - dps_val: help_sleep
+            value: Help sleep
+          - dps_val: breath
+            value: Breathing
+          - dps_val: colourful
+            value: Colourful
+          - dps_val: play
+            value: Play
+          - dps_val: reading
+            value: Reading
+          - dps_val: night
+            value: Nightlight
+          - dps_val: null
+            value: None
+            hidden: true
+  - entity: select
+    name: Custom scene
+    icon: "mdi:palette"
+    category: config
+    dps:
+      - id: 13
+        type: string
+        name: option
+        optional: true
+        mapping:
+          - dps_val: mode_1
+            value: Scene 1
+          - dps_val: mode_2
+            value: Scene 2
+          - dps_val: mode_3
+            value: Scene 3
+          - dps_val: mode_4
+            value: Scene 4
+          - dps_val: mode_5
+            value: Scene 5
+          - dps_val: mode_6
+            value: Scene 6
+          - dps_val: mode_7
+            value: Scene 7
+          - dps_val: mode_8
+            value: Scene 8
+          - dps_val: null
+            value: None
+            hidden: true
+      - id: 14
+        name: setting_data
+        type: string
+        optional: true