]> git.basschouten.com Git - openhab-addons.git/commitdiff
[miio] add suppport for Mr Bond M1 pro Smart Clothes Dryer (#8749)
authorMarcel <marcelrv@users.noreply.github.com>
Fri, 16 Oct 2020 17:01:23 +0000 (19:01 +0200)
committerGitHub <noreply@github.com>
Fri, 16 Oct 2020 17:01:23 +0000 (10:01 -0700)
Add support for following types
"mrbond.airer.m1s",
"mrbond.airer.m1pro",
"mrbond.airer.m1super"

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/mrbond.airer.m1pro.json [new file with mode: 0644]

index 3392514ff86ffb9fe21147b7b5e76ec268a57fe5..1bf0aace846f607f52a9cbbd7e63d52fb42be620 100644 (file)
@@ -147,6 +147,9 @@ or in case of unknown models include the model information e.g.:
 | Mi Humdifier                 | miio:basic       | [zhimi.humidifier.v1](#zhimi-humidifier-v1) | Yes       |            |
 | Light Control (Wall Switch)  | miio:unsupported | lumi.ctrl_neutral1.v1  | No        |            |
 | Light Control (Wall Switch)  | miio:unsupported | lumi.ctrl_neutral2.v1  | No        |            |
+| Mr Bond M1 Pro Smart Clothes Dryer | miio:basic       | [mrbond.airer.m1pro](#mrbond-airer-m1pro) | Yes       | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
+| Mr Bond M1 Smart Clothes Dryer | miio:basic       | [mrbond.airer.m1s](#mrbond-airer-m1s) | Yes       | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
+| Mr Bond M1 Super Smart Clothes Dryer | miio:basic       | [mrbond.airer.m1super](#mrbond-airer-m1super) | Yes       | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
 | Xiaomi Philips Eyecare Smart Lamp 2 | miio:basic       | [philips.light.sread1](#philips-light-sread1) | Yes       |            |
 | Xiaomi Philips Eyecare Smart Lamp 2 | miio:basic       | [philips.light.sread2](#philips-light-sread2) | Yes       |            |
 | Xiaomi Philips LED Ceiling Lamp | miio:basic       | [philips.light.ceiling](#philips-light-ceiling) | Yes       |            |
@@ -1207,6 +1210,42 @@ e.g. `smarthome:send actionCommand 'upd_timer["1498595904821", "on"]'` would ena
 | temperature      | Number  | Temperature                         |            |
 | childlock        | Switch  | Child Lock                          |            |
 
+### Mr Bond M1 Pro Smart Clothes Dryer (<a name="mrbond-airer-m1pro">mrbond.airer.m1pro</a>) Channels
+
+| Channel          | Type    | Description                         | Comment    |
+|------------------|---------|-------------------------------------|------------|
+| dry              | Switch  | Dry                                 |            |
+| led              | Switch  | LED Status                          |            |
+| motor            | Number  | Motor                               |            |
+| drytime          | Number  | Dry Time                            |            |
+| airer_location   | Number  | Airer Location                      |            |
+| disinfect        | Switch  | disinfect                           |            |
+| distime          | Number  | Disinfect Time                      |            |
+
+### Mr Bond M1 Smart Clothes Dryer (<a name="mrbond-airer-m1s">mrbond.airer.m1s</a>) Channels
+
+| Channel          | Type    | Description                         | Comment    |
+|------------------|---------|-------------------------------------|------------|
+| dry              | Switch  | Dry                                 |            |
+| led              | Switch  | LED Status                          |            |
+| motor            | Number  | Motor                               |            |
+| drytime          | Number  | Dry Time                            |            |
+| airer_location   | Number  | Airer Location                      |            |
+| disinfect        | Switch  | disinfect                           |            |
+| distime          | Number  | Disinfect Time                      |            |
+
+### Mr Bond M1 Super Smart Clothes Dryer (<a name="mrbond-airer-m1super">mrbond.airer.m1super</a>) Channels
+
+| Channel          | Type    | Description                         | Comment    |
+|------------------|---------|-------------------------------------|------------|
+| dry              | Switch  | Dry                                 |            |
+| led              | Switch  | LED Status                          |            |
+| motor            | Number  | Motor                               |            |
+| drytime          | Number  | Dry Time                            |            |
+| airer_location   | Number  | Airer Location                      |            |
+| disinfect        | Switch  | disinfect                           |            |
+| distime          | Number  | Disinfect Time                      |            |
+
 ### Xiaomi Philips Eyecare Smart Lamp 2 (<a name="philips-light-sread1">philips.light.sread1</a>) Channels
 
 | Channel          | Type    | Description                         | Comment    |
@@ -4070,6 +4109,51 @@ Number temperature "Temperature" (G_humidifier) {channel="miio:basic:humidifier:
 Switch childlock "Child Lock" (G_humidifier) {channel="miio:basic:humidifier:childlock"}
 ```
 
+### Mr Bond M1 Pro Smart Clothes Dryer (mrbond.airer.m1pro) item file lines
+
+note: Autogenerated example. Replace the id (airer) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
+
+```java
+Group G_airer "Mr Bond M1 Pro Smart Clothes Dryer" <status>
+Switch dry "Dry" (G_airer) {channel="miio:basic:airer:dry"}
+Switch led "LED Status" (G_airer) {channel="miio:basic:airer:led"}
+Number motor "Motor" (G_airer) {channel="miio:basic:airer:motor"}
+Number drytime "Dry Time" (G_airer) {channel="miio:basic:airer:drytime"}
+Number airer_location "Airer Location" (G_airer) {channel="miio:basic:airer:airer_location"}
+Switch disinfect "disinfect" (G_airer) {channel="miio:basic:airer:disinfect"}
+Number distime "Disinfect Time" (G_airer) {channel="miio:basic:airer:distime"}
+```
+
+### Mr Bond M1 Smart Clothes Dryer (mrbond.airer.m1s) item file lines
+
+note: Autogenerated example. Replace the id (airer) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
+
+```java
+Group G_airer "Mr Bond M1 Smart Clothes Dryer" <status>
+Switch dry "Dry" (G_airer) {channel="miio:basic:airer:dry"}
+Switch led "LED Status" (G_airer) {channel="miio:basic:airer:led"}
+Number motor "Motor" (G_airer) {channel="miio:basic:airer:motor"}
+Number drytime "Dry Time" (G_airer) {channel="miio:basic:airer:drytime"}
+Number airer_location "Airer Location" (G_airer) {channel="miio:basic:airer:airer_location"}
+Switch disinfect "disinfect" (G_airer) {channel="miio:basic:airer:disinfect"}
+Number distime "Disinfect Time" (G_airer) {channel="miio:basic:airer:distime"}
+```
+
+### Mr Bond M1 Super Smart Clothes Dryer (mrbond.airer.m1super) item file lines
+
+note: Autogenerated example. Replace the id (airer) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
+
+```java
+Group G_airer "Mr Bond M1 Super Smart Clothes Dryer" <status>
+Switch dry "Dry" (G_airer) {channel="miio:basic:airer:dry"}
+Switch led "LED Status" (G_airer) {channel="miio:basic:airer:led"}
+Number motor "Motor" (G_airer) {channel="miio:basic:airer:motor"}
+Number drytime "Dry Time" (G_airer) {channel="miio:basic:airer:drytime"}
+Number airer_location "Airer Location" (G_airer) {channel="miio:basic:airer:airer_location"}
+Switch disinfect "disinfect" (G_airer) {channel="miio:basic:airer:disinfect"}
+Number distime "Disinfect Time" (G_airer) {channel="miio:basic:airer:distime"}
+```
+
 ### Xiaomi Philips Eyecare Smart Lamp 2 (philips.light.sread1) item file lines
 
 note: Autogenerated example. Replace the id (light) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
index d596daff6c6c466ea6f77c38b0d301debeaaad35..3755b31c6ff3816a2280e93791007f274a3e6a3a 100644 (file)
@@ -88,6 +88,10 @@ public enum MiIoDevices {
     HUMIDIFIER("zhimi.humidifier.v1", "Mi Humdifier", THING_TYPE_BASIC),
     LUMI_C11("lumi.ctrl_neutral1.v1", "Light Control (Wall Switch)", THING_TYPE_UNSUPPORTED),
     LUMI_C12("lumi.ctrl_neutral2.v1", "Light Control (Wall Switch)", THING_TYPE_UNSUPPORTED),
+    MRBOND_AIRER_M1PRO("mrbond.airer.m1pro", "Mr Bond M1 Pro Smart Clothes Dryer", THING_TYPE_BASIC),
+    MRBOND_AIRER_M1S("mrbond.airer.m1s", "Mr Bond M1 Smart Clothes Dryer", THING_TYPE_BASIC),
+    MRBOND_AIRER_M1SUPER("mrbond.airer.m1super", "Mr Bond M1 Super Smart Clothes Dryer", THING_TYPE_BASIC),
+    PHILIPS_R1("philips.light.sread1", "Xiaomi Philips Eyecare Smart Lamp 2", THING_TYPE_BASIC),
     PHILIPS_SR1("philips.light.sread1", "Xiaomi Philips Eyecare Smart Lamp 2", THING_TYPE_BASIC),
     PHILIPS_SR2("philips.light.sread2", "Xiaomi Philips Eyecare Smart Lamp 2", THING_TYPE_BASIC),
     PHILIPS_C("philips.light.ceiling", "Xiaomi Philips LED Ceiling Lamp", THING_TYPE_BASIC),
diff --git a/bundles/org.openhab.binding.miio/src/main/resources/database/mrbond.airer.m1pro.json b/bundles/org.openhab.binding.miio/src/main/resources/database/mrbond.airer.m1pro.json
new file mode 100644 (file)
index 0000000..746b329
--- /dev/null
@@ -0,0 +1,107 @@
+{
+       "deviceMapping": {
+               "id": [
+                       "mrbond.airer.m1s",
+                       "mrbond.airer.m1pro",
+                       "mrbond.airer.m1super"
+               ],
+               "propertyMethod": "get_prop",
+               "maxProperties": 2,
+               "channels": [
+                       {
+                               "property": "dry",
+                               "friendlyName": "Dry",
+                               "channel": "dry",
+                               "type": "Switch",
+                               "refresh": true,
+                               "ChannelGroup": "Status",
+                               "actions": [
+                                       {
+                                               "command": "set_dry",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "led",
+                               "friendlyName": "LED Status",
+                               "channel": "led",
+                               "type": "Switch",
+                               "refresh": true,
+                               "ChannelGroup": "actions",
+                               "actions": [
+                                       {
+                                               "command": "set_lamp",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "motor",
+                               "friendlyName": "Motor",
+                               "channel": "motor",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_motor",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "drytime",
+                               "friendlyName": "Dry Time",
+                               "channel": "drytime",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_drytime",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "airer_location",
+                               "friendlyName": "Airer Location",
+                               "channel": "airer_location",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_airer_location",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "disinfect",
+                               "friendlyName": "disinfect",
+                               "channel": "disinfect",
+                               "type": "Switch",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_disinfect",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       },
+                       {
+                               "property": "distime",
+                               "friendlyName": "Disinfect Time",
+                               "channel": "distime",
+                               "type": "Number",
+                               "refresh": true,
+                               "actions": [
+                                       {
+                                               "command": "set_distime",
+                                               "parameterType": "NUMBER"
+                                       }
+                               ]
+                       }
+               ],
+               "experimental": true
+       }
+}