[miio] add suppport for Mr Bond M1 pro Smart Clothes Dryer (#8749)

Add support for following types
"mrbond.airer.m1s",
"mrbond.airer.m1pro",
"mrbond.airer.m1super"

Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
This commit is contained in:
Marcel 2020-10-16 19:01:23 +02:00 committed by GitHub
parent de37ecc5e9
commit 71fd87c5c9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 195 additions and 0 deletions

View 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.

View 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),

View File

@ -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
}
}