]> git.basschouten.com Git - openhab-addons.git/commitdiff
[miio] add support for viomi.waterheater.e1 (#9798)
authorMarcel <marcel@verpaalen.com>
Fri, 15 Jan 2021 20:31:56 +0000 (21:31 +0100)
committerGitHub <noreply@github.com>
Fri, 15 Jan 2021 20:31:56 +0000 (12:31 -0800)
* [miio] add support for viomi.waterheater.e1
* Update bundles/org.openhab.binding.miio/src/main/resources/database/viomi.waterheater.e1.json
* [miio] fix typo in readme

Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
bundles/org.openhab.binding.miio/README.md
bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java
bundles/org.openhab.binding.miio/src/main/resources/database/viomi.waterheater.e1.json [new file with mode: 0644]

index dc58dce9742520b03edc1a7073bb5c0ff089ff0b..798d1be891471f34865f02cf1408e2d99d7960e9 100644 (file)
@@ -340,6 +340,7 @@ Currently the miio binding supports more than 250 different models.
 | Roborock Vacuum S6           | miio:vacuum      | [rockrobo.vacuum.s6](#rockrobo-vacuum-s6) | Yes       |            |
 | Roborock S6                  | miio:vacuum      | [roborock.vacuum.s6](#roborock-vacuum-s6) | Yes       |            |
 | Roborock Xiaowa E Series Vacuum v2 | miio:unsupported | roborock.vacuum.e2     | No        |            |
+| VIOMI Internet electric water heater 1A (60L) | miio:basic       | [viomi.waterheater.e1](#viomi-waterheater-e1) | Yes       | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
 | Viomi Cleaning Robot V-RVCLM21B | miio:basic       | [viomi.vacuum.v6](#viomi-vacuum-v6) | Yes       |            |
 | Mi Robot Vacuum-Mop P        | miio:basic       | [viomi.vacuum.v7](#viomi-vacuum-v7) | Yes       |            |
 | Mi Robot Vacuum-Mop P        | miio:basic       | [viomi.vacuum.v8](#viomi-vacuum-v8) | Yes       |            |
@@ -2305,6 +2306,21 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
 | lp_autooff_delay | Number  | Low Power Limit Time                |            |
 | lp_threshold     | Number  | Low Power Threshold                 |            |
 
+### VIOMI Internet electric water heater 1A (60L) (<a name="viomi-waterheater-e1">viomi.waterheater.e1</a>) Channels
+
+| Channel          | Type    | Description                         | Comment    |
+|------------------|---------|-------------------------------------|------------|
+| washStatus       | Number  | Wash Status                         |            |
+| velocity         | Number  | Velocity                            |            |
+| waterTemp        | Number:Temperature | Water Temperature                   |            |
+| targetTemp       | Number:Temperature | Target Temperature                  |            |
+| errStatus        | Number  | Error Status                        |            |
+| hotWater         | Number  | Hot Water                           |            |
+| needClean        | Switch  | Need Clean                          |            |
+| modeType         | Number  | Mode                                |            |
+| appointStart     | Number  | Appoint Start                       |            |
+| appointEnd       | Number  | Appoint End                         |            |
+
 ### Viomi Cleaning Robot V-RVCLM21B (<a name="viomi-vacuum-v6">viomi.vacuum.v6</a>) Channels
 
 | Channel          | Type    | Description                         | Comment    |
@@ -6367,6 +6383,24 @@ Number lp_autooff_delay "Low Power Limit Time" (G_powerstrip) {channel="miio:bas
 Number lp_threshold "Low Power Threshold" (G_powerstrip) {channel="miio:basic:powerstrip:lp_threshold"}
 ```
 
+### VIOMI Internet electric water heater 1A (60L) (viomi.waterheater.e1) item file lines
+
+note: Autogenerated example. Replace the id (waterheater) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
+
+```java
+Group G_waterheater "VIOMI Internet electric water heater 1A (60L)" <status>
+Number washStatus "Wash Status" (G_waterheater) {channel="miio:basic:waterheater:washStatus"}
+Number velocity "Velocity" (G_waterheater) {channel="miio:basic:waterheater:velocity"}
+Number:Temperature waterTemp "Water Temperature" (G_waterheater) {channel="miio:basic:waterheater:waterTemp"}
+Number:Temperature targetTemp "Target Temperature" (G_waterheater) {channel="miio:basic:waterheater:targetTemp"}
+Number errStatus "Error Status" (G_waterheater) {channel="miio:basic:waterheater:errStatus"}
+Number hotWater "Hot Water" (G_waterheater) {channel="miio:basic:waterheater:hotWater"}
+Switch needClean "Need Clean" (G_waterheater) {channel="miio:basic:waterheater:needClean"}
+Number modeType "Mode" (G_waterheater) {channel="miio:basic:waterheater:modeType"}
+Number appointStart "Appoint Start" (G_waterheater) {channel="miio:basic:waterheater:appointStart"}
+Number appointEnd "Appoint End" (G_waterheater) {channel="miio:basic:waterheater:appointEnd"}
+```
+
 ### Viomi Cleaning Robot V-RVCLM21B (viomi.vacuum.v6) item file lines
 
 note: Autogenerated example. Replace the id (vacuum) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
index 92238a9c66a07b3ce4bc4ef6f175bb303bb75a5b..aa0e6da67c4ea5431f94470cfd4eb62b1cce73dd 100644 (file)
@@ -197,6 +197,7 @@ public enum MiIoDevices {
     ROCKROBO_VACUUM_S6("rockrobo.vacuum.s6", "Roborock Vacuum S6", THING_TYPE_VACUUM),
     ROBOROCK_VACUUM_S6("roborock.vacuum.s6", "Roborock S6", THING_TYPE_VACUUM),
     ROBOROCK_VACUUM_E2("roborock.vacuum.e2", "Roborock Xiaowa E Series Vacuum v2", THING_TYPE_UNSUPPORTED),
+    VIOMI_WATERHEATER_E1("viomi.waterheater.e1", "VIOMI Internet electric water heater 1A (60L)", THING_TYPE_BASIC),
     VIOMI_VACUUM_V6("viomi.vacuum.v6", "Viomi Cleaning Robot V-RVCLM21B", THING_TYPE_BASIC),
     VIOMI_VACUUM_V7("viomi.vacuum.v7", "Mi Robot Vacuum-Mop P", THING_TYPE_BASIC),
     VIOMI_VACUUM_V8("viomi.vacuum.v8", "Mi Robot Vacuum-Mop P", THING_TYPE_BASIC),
diff --git a/bundles/org.openhab.binding.miio/src/main/resources/database/viomi.waterheater.e1.json b/bundles/org.openhab.binding.miio/src/main/resources/database/viomi.waterheater.e1.json
new file mode 100644 (file)
index 0000000..ba86349
--- /dev/null
@@ -0,0 +1,144 @@
+{
+       "deviceMapping": {
+               "id": [
+                       "viomi.waterheater.e1"
+               ],
+               "propertyMethod": "get_prop",
+               "maxProperties": 1,
+               "channels": [
+                       {
+                               "property": "washStatus",
+                               "friendlyName": "Wash Status",
+                               "channel": "washStatus",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_washStatus",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "velocity",
+                               "friendlyName": "Velocity",
+                               "channel": "velocity",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_velocity",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "waterTemp",
+                               "friendlyName": "Water Temperature",
+                               "channel": "waterTemp",
+                               "type": "Number:Temperature",
+                               "unit": "CELCIUS",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_temp",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ],
+                               "category": "temperature",
+                               "tags": [
+                                       "Measurement",
+                                       "Temperature"
+                               ]
+                       },
+                       {
+                               "property": "targetTemp",
+                               "friendlyName": "Target Temperature",
+                               "channel": "targetTemp",
+                               "type": "Number:Temperature",
+                               "unit": "CELCIUS",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_temp",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ],
+                               "category": "temperature",
+                               "tags": [
+                                       "Setpoint",
+                                       "Temperature"
+                               ]
+                       },
+                       {
+                               "property": "errStatus",
+                               "friendlyName": "Error Status",
+                               "channel": "errStatus",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "hotWater",
+                               "friendlyName": "Hot Water",
+                               "channel": "hotWater",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_hotWater",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "needClean",
+                               "friendlyName": "Need Clean",
+                               "channel": "needClean",
+                               "type": "Switch",
+                               "refresh": true,
+                               "actions": []
+                       },
+                       {
+                               "property": "modeType",
+                               "friendlyName": "Mode",
+                               "channel": "modeType",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_mode",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "appointStart",
+                               "friendlyName": "Appoint Start",
+                               "channel": "appointStart",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_appointStart",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "appointEnd",
+                               "friendlyName": "Appoint End",
+                               "channel": "appointEnd",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_appointEnd",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       }
+               ],
+               "experimental": true
+       }
+}