瀏覽代碼

feat(mrpure_saltchlorinator): support basic models

Model: Aquark InverClear
Basic model does not have temperature, ORP, pH probes
There are also Medium and Premium tier models

Issue #6042
Jason Rumney 20 小時之前
父節點
當前提交
eb8d3fc286
共有 1 個文件被更改,包括 67 次插入0 次删除
  1. 67 0
      custom_components/tuya_local/devices/mrpure_saltchlorinator.yaml

+ 67 - 0
custom_components/tuya_local/devices/mrpure_saltchlorinator.yaml

@@ -9,6 +9,9 @@ products:
   - id: 5x5lnhkwee1l1fuu
   - id: 5x5lnhkwee1l1fuu
     manufacturer: Aquark
     manufacturer: Aquark
     model: InverClear
     model: InverClear
+  - id: hkkucfvllhqdatto
+    manufacturer: Aquark
+    model: InverClear Basic
 entities:
 entities:
   - entity: sensor
   - entity: sensor
     name: Salinity
     name: Salinity
@@ -21,9 +24,11 @@ entities:
   - entity: sensor
   - entity: sensor
     class: temperature
     class: temperature
     icon: "mdi:pool-thermometer"
     icon: "mdi:pool-thermometer"
+    hidden: unavailable
     dps:
     dps:
       - id: 102
       - id: 102
         type: integer
         type: integer
+        optional: true
         name: sensor
         name: sensor
         unit: C
         unit: C
         class: measurement
         class: measurement
@@ -35,6 +40,18 @@ entities:
         name: f
         name: f
         mapping:
         mapping:
           - scale: 10
           - scale: 10
+      - id: 102
+        type: integer
+        optional: true
+        name: available
+        mapping:
+          - dps_val: null
+            value: true
+            constraint: f
+            conditions:
+              - dps_val: null
+                value: false
+          - value: true
   - entity: switch
   - entity: switch
     dps:
     dps:
       - id: 103
       - id: 103
@@ -51,26 +68,46 @@ entities:
   - entity: select
   - entity: select
     translation_key: temperature_unit
     translation_key: temperature_unit
     category: config
     category: config
+    hidden: unavailable
     dps:
     dps:
       - id: 104
       - id: 104
         type: boolean
         type: boolean
+        optional: true
         name: option
         name: option
         mapping:
         mapping:
           - dps_val: false
           - dps_val: false
             value: celsius
             value: celsius
           - dps_val: true
           - dps_val: true
             value: fahrenheit
             value: fahrenheit
+      - id: 104
+        type: boolean
+        optional: true
+        name: available
+        mapping:
+          - dps_val: null
+            value: false
+          - value: true
   - entity: sensor
   - entity: sensor
     name: Chassis temperature
     name: Chassis temperature
     class: temperature
     class: temperature
+    hidden: unavailable
     dps:
     dps:
       - id: 105
       - id: 105
         type: integer
         type: integer
+        optional: true
         name: sensor
         name: sensor
         unit: C
         unit: C
         class: measurement
         class: measurement
         mapping:
         mapping:
           - scale: 10
           - scale: 10
+      - id: 105
+        type: integer
+        optional: true
+        name: available
+        mapping:
+          - dps_val: null
+            value: false
+          - value: true
   - entity: sensor
   - entity: sensor
     name: Electrolysis voltage
     name: Electrolysis voltage
     class: voltage
     class: voltage
@@ -133,22 +170,42 @@ entities:
   - entity: sensor
   - entity: sensor
     name: ORP
     name: ORP
     class: voltage
     class: voltage
+    hidden: unavailable
     dps:
     dps:
       - id: 111
       - id: 111
         type: integer
         type: integer
+        optional: true
         name: sensor
         name: sensor
         unit: mV
         unit: mV
         class: measurement
         class: measurement
+      - id: 111
+        type: integer
+        optional: true
+        name: available
+        mapping:
+          - dps_val: null
+            value: false
+          - value: true
   - entity: sensor
   - entity: sensor
     class: ph
     class: ph
+    hidden: unavailable
     dps:
     dps:
       - id: 112
       - id: 112
         type: integer
         type: integer
+        optional: true
         name: sensor
         name: sensor
         unit: pH
         unit: pH
         mapping:
         mapping:
           - scale: 10
           - scale: 10
         class: measurement
         class: measurement
+      - id: 112
+        type: integer
+        optional: true
+        name: available
+        mapping:
+          - dps_val: null
+            value: false
+          - value: true
   - entity: sensor
   - entity: sensor
     name: Chlorine produced
     name: Chlorine produced
     dps:
     dps:
@@ -225,9 +282,11 @@ entities:
     name: Water quality
     name: Water quality
     translation_key: air_quality
     translation_key: air_quality
     class: enum
     class: enum
+    hidden: unavailable
     dps:
     dps:
       - id: 119
       - id: 119
         type: string
         type: string
+        optional: true
         name: sensor
         name: sensor
         mapping:
         mapping:
           - dps_val: WAIT
           - dps_val: WAIT
@@ -236,6 +295,14 @@ entities:
             value: good
             value: good
           - dps_val: GREAT
           - dps_val: GREAT
             value: excellent
             value: excellent
+      - id: 119
+        type: string
+        optional: true
+        name: available
+        mapping:
+          - dps_val: null
+            value: false
+          - value: true
   - entity: number
   - entity: number
     name: Electrolytic chip size
     name: Electrolytic chip size
     category: config
     category: config