Skip to content

Commit 4001735

Browse files
authored
[miio] add Xiaomi Robot Vacuum X10 (dreame.vacuum.r2209) (openhab#17427)
Adding support for the following models: * Xiaomi Robot Vacuum X10 (modelId: dreame.vacuum.r2209) Signed-off-by: Marcel Verpaalen <[email protected]>
1 parent 6c77b16 commit 4001735

File tree

4 files changed

+1423
-0
lines changed

4 files changed

+1423
-0
lines changed

bundles/org.openhab.binding.miio/README.md

+110
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,7 @@ Currently the miio binding supports more than 360 different models.
262262
| MOVA Z500 Robot Vacuum and Mop Cleaner | miio:basic | [dreame.vacuum.p2156o](#dreame-vacuum-p2156o) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
263263
| MOVA L600 Robot Vacuum and Mop Cleaner | miio:basic | [dreame.vacuum.p2157](#dreame-vacuum-p2157) | Yes | |
264264
| Dreame Bot D9 Max | miio:basic | [dreame.vacuum.p2259](#dreame-vacuum-p2259) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
265+
| Xiaomi Robot Vacuum X10 | miio:basic | [dreame.vacuum.r2209](#dreame-vacuum-r2209) | Yes | |
265266
| DreameBot L10s Ultra | miio:basic | [dreame.vacuum.r2228o](#dreame-vacuum-r2228o) | Yes | |
266267
| HUIZUO ARIES For Bedroom | miio:basic | [huayi.light.ari013](#huayi-light-ari013) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
267268
| HUIZUO ARIES For Living Room | miio:basic | [huayi.light.aries](#huayi-light-aries) | Experimental | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
@@ -1676,6 +1677,59 @@ Note, not all the values need to be in the json file, e.g. a subset of the param
16761677
| total_clean_times | Number | Clean Logs - Total Clean Times | |
16771678
| total_clean_area | Number | Clean Logs - Total Clean Area | |
16781679

1680+
### Xiaomi Robot Vacuum X10 (<a name="dreame-vacuum-r2209">dreame.vacuum.r2209</a>) Channels
1681+
1682+
| Channel | Type | Description | Comment |
1683+
|----------------------------|----------------------|------------------------------------------|------------|
1684+
| actions | String | Actions | |
1685+
| status | Number | Robot Cleaner - Status | Value mapping `["1"="Sweeping","2"="Idle","3"="Paused","4"="Error","5"="Go Charging","6"="Charging","7"="Mopping","11"="Building","13"="Charging Completed"]` |
1686+
| fault | Number | Robot Cleaner - Device Fault | |
1687+
| mode | Number | Robot Cleaner - Mode | Value mapping `["0"="Silent","1"="Basic","2"="Strong","3"="Full Speed"]` |
1688+
| battery_level | Number:Dimensionless | Battery - Battery Level | |
1689+
| charging_state | Number | Battery - Charging State | Value mapping `["1"="Charging","2"="Not Charging","5"="Go Charging"]` |
1690+
| brush_left_time | Number:Time | Brush Cleaner - Brush Left Time | |
1691+
| brush_life_level | Number:Dimensionless | Brush Cleaner - Brush Life Level | |
1692+
| brush_left_time1 | Number:Time | Side Cleaning Brush - Brush Left Time | |
1693+
| brush_life_level1 | Number:Dimensionless | Side Cleaning Brush - Brush Life Level | |
1694+
| filter_life_level | Number:Dimensionless | Filter - Filter Life Level | |
1695+
| filter_left_time | Number:Time | Filter - Filter Left Time | |
1696+
| work_mode | Number | Vacuum Extend - Work Mode | |
1697+
| cleaning_time | Number:Time | Vacuum Extend - Cleaning Time | |
1698+
| cleaning_area | Number:Area | Vacuum Extend - Cleaning Area | |
1699+
| cleaning_mode | Number | Vacuum Extend - Cleaning Mode | Value mapping `["0"="Quiet","1"="Standard","2"="Medium","3"="Strong"]` |
1700+
| mop_mode | Number | Vacuum Extend - Mop Mode | Value mapping `["1"="Low","2"="Medium","3"="High"]` |
1701+
| waterbox_status | Number | Vacuum Extend - Waterbox Status | Value mapping `["0"="No","1"="Yes"]` |
1702+
| task_status | Number | Vacuum Extend - Task Status | |
1703+
| clean_extend_data | String | Vacuum Extend - Clean Extend Data | |
1704+
| break_point_restart | Number | Vacuum Extend - Break Point Restart | Value mapping `["0"="Off","1"="On"]` |
1705+
| carpet_press | Number | Vacuum Extend - Carpet Press | Value mapping `["0"="Off","1"="On"]` |
1706+
| serial_number | String | Vacuum Extend - Serial Number | |
1707+
| remote_state | String | Vacuum Extend - Remote State | |
1708+
| clean_rags_tip | Number:Time | Vacuum Extend - Clean Rags Tip | |
1709+
| keep_sweeper_time | Number:Time | Vacuum Extend - Keep Sweeper Time | |
1710+
| faults | String | Vacuum Extend - Faults | |
1711+
| nation_matched | String | Vacuum Extend - Nation Matched | |
1712+
| relocation_status | Number | Vacuum Extend - Relocation Status | |
1713+
| enable | Switch | Do Not Disturb - Enable | |
1714+
| start_time | String | Do Not Disturb - Start Time | |
1715+
| end_time | String | Do Not Disturb - End Time | |
1716+
| frame_info | String | Map - Frame Info | |
1717+
| map_extend_data | String | Map - Map Extend Data | |
1718+
| mult_map_info | String | Map - Mult Map Info | |
1719+
| volume | Number:Dimensionless | Audio - Volume | |
1720+
| voice_packet_id | String | Audio - Voice Packet Id | |
1721+
| voice_change_state | String | Audio - Voice Change State | |
1722+
| set_voice | String | Audio - Set Voice | |
1723+
| time_zone | String | Time - Time Zone | |
1724+
| timer_clean | String | Time - Timer Clean | |
1725+
| first_clean_time | Number | Clean Logs - First Clean Time | |
1726+
| total_clean_time | Number:Time | Clean Logs - Total Clean Time | |
1727+
| total_clean_times | Number | Clean Logs - Total Clean Times | |
1728+
| total_clean_area | Number | Clean Logs - Total Clean Area | |
1729+
| auto_collect | Number | Collect Dust - Auto Collect | Value mapping `["0"="Close-auto-collect","1"="Open-auto-collect"]` |
1730+
| clean_times | Number | Collect Dust - Clean Times | |
1731+
| dust_enable | Number | Collect Dust - Dust Enable | Value mapping `["0"="Disable","1"="Enable"]` |
1732+
16791733
### DreameBot L10s Ultra (<a name="dreame-vacuum-r2228o">dreame.vacuum.r2228o</a>) Channels
16801734

16811735
| Channel | Type | Description | Comment |
@@ -7494,6 +7548,62 @@ Number total_clean_times "Clean Logs - Total Clean Times" (G_vacuum) {channel="m
74947548
Number total_clean_area "Clean Logs - Total Clean Area" (G_vacuum) {channel="miio:basic:vacuum:total_clean_area"}
74957549
```
74967550

7551+
### Xiaomi Robot Vacuum X10 (dreame.vacuum.r2209) item file lines
7552+
7553+
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.
7554+
7555+
```java
7556+
Group G_vacuum "Xiaomi Robot Vacuum X10" <status>
7557+
String actions "Actions" (G_vacuum) {channel="miio:basic:vacuum:actions"}
7558+
Number status "Robot Cleaner - Status" (G_vacuum) {channel="miio:basic:vacuum:status"}
7559+
Number fault "Robot Cleaner - Device Fault" (G_vacuum) {channel="miio:basic:vacuum:fault"}
7560+
Number mode "Robot Cleaner - Mode" (G_vacuum) {channel="miio:basic:vacuum:mode"}
7561+
Number:Dimensionless battery_level "Battery - Battery Level" (G_vacuum) {channel="miio:basic:vacuum:battery_level"}
7562+
Number charging_state "Battery - Charging State" (G_vacuum) {channel="miio:basic:vacuum:charging_state"}
7563+
Number:Time brush_left_time "Brush Cleaner - Brush Left Time" (G_vacuum) {channel="miio:basic:vacuum:brush_left_time"}
7564+
Number:Dimensionless brush_life_level "Brush Cleaner - Brush Life Level" (G_vacuum) {channel="miio:basic:vacuum:brush_life_level"}
7565+
Number:Time brush_left_time1 "Side Cleaning Brush - Brush Left Time" (G_vacuum) {channel="miio:basic:vacuum:brush_left_time1"}
7566+
Number:Dimensionless brush_life_level1 "Side Cleaning Brush - Brush Life Level" (G_vacuum) {channel="miio:basic:vacuum:brush_life_level1"}
7567+
Number:Dimensionless filter_life_level "Filter - Filter Life Level" (G_vacuum) {channel="miio:basic:vacuum:filter_life_level"}
7568+
Number:Time filter_left_time "Filter - Filter Left Time" (G_vacuum) {channel="miio:basic:vacuum:filter_left_time"}
7569+
Number work_mode "Vacuum Extend - Work Mode" (G_vacuum) {channel="miio:basic:vacuum:work_mode"}
7570+
Number:Time cleaning_time "Vacuum Extend - Cleaning Time" (G_vacuum) {channel="miio:basic:vacuum:cleaning_time"}
7571+
Number:Area cleaning_area "Vacuum Extend - Cleaning Area" (G_vacuum) {channel="miio:basic:vacuum:cleaning_area"}
7572+
Number cleaning_mode "Vacuum Extend - Cleaning Mode" (G_vacuum) {channel="miio:basic:vacuum:cleaning_mode"}
7573+
Number mop_mode "Vacuum Extend - Mop Mode" (G_vacuum) {channel="miio:basic:vacuum:mop_mode"}
7574+
Number waterbox_status "Vacuum Extend - Waterbox Status" (G_vacuum) {channel="miio:basic:vacuum:waterbox_status"}
7575+
Number task_status "Vacuum Extend - Task Status" (G_vacuum) {channel="miio:basic:vacuum:task_status"}
7576+
String clean_extend_data "Vacuum Extend - Clean Extend Data" (G_vacuum) {channel="miio:basic:vacuum:clean_extend_data"}
7577+
Number break_point_restart "Vacuum Extend - Break Point Restart" (G_vacuum) {channel="miio:basic:vacuum:break_point_restart"}
7578+
Number carpet_press "Vacuum Extend - Carpet Press" (G_vacuum) {channel="miio:basic:vacuum:carpet_press"}
7579+
String serial_number "Vacuum Extend - Serial Number" (G_vacuum) {channel="miio:basic:vacuum:serial_number"}
7580+
String remote_state "Vacuum Extend - Remote State" (G_vacuum) {channel="miio:basic:vacuum:remote_state"}
7581+
Number:Time clean_rags_tip "Vacuum Extend - Clean Rags Tip" (G_vacuum) {channel="miio:basic:vacuum:clean_rags_tip"}
7582+
Number:Time keep_sweeper_time "Vacuum Extend - Keep Sweeper Time" (G_vacuum) {channel="miio:basic:vacuum:keep_sweeper_time"}
7583+
String faults "Vacuum Extend - Faults" (G_vacuum) {channel="miio:basic:vacuum:faults"}
7584+
String nation_matched "Vacuum Extend - Nation Matched" (G_vacuum) {channel="miio:basic:vacuum:nation_matched"}
7585+
Number relocation_status "Vacuum Extend - Relocation Status" (G_vacuum) {channel="miio:basic:vacuum:relocation_status"}
7586+
Switch enable "Do Not Disturb - Enable" (G_vacuum) {channel="miio:basic:vacuum:enable"}
7587+
String start_time "Do Not Disturb - Start Time" (G_vacuum) {channel="miio:basic:vacuum:start_time"}
7588+
String end_time "Do Not Disturb - End Time" (G_vacuum) {channel="miio:basic:vacuum:end_time"}
7589+
String frame_info "Map - Frame Info" (G_vacuum) {channel="miio:basic:vacuum:frame_info"}
7590+
String map_extend_data "Map - Map Extend Data" (G_vacuum) {channel="miio:basic:vacuum:map_extend_data"}
7591+
String mult_map_info "Map - Mult Map Info" (G_vacuum) {channel="miio:basic:vacuum:mult_map_info"}
7592+
Number:Dimensionless volume "Audio - Volume" (G_vacuum) {channel="miio:basic:vacuum:volume"}
7593+
String voice_packet_id "Audio - Voice Packet Id" (G_vacuum) {channel="miio:basic:vacuum:voice_packet_id"}
7594+
String voice_change_state "Audio - Voice Change State" (G_vacuum) {channel="miio:basic:vacuum:voice_change_state"}
7595+
String set_voice "Audio - Set Voice" (G_vacuum) {channel="miio:basic:vacuum:set_voice"}
7596+
String time_zone "Time - Time Zone" (G_vacuum) {channel="miio:basic:vacuum:time_zone"}
7597+
String timer_clean "Time - Timer Clean" (G_vacuum) {channel="miio:basic:vacuum:timer_clean"}
7598+
Number first_clean_time "Clean Logs - First Clean Time" (G_vacuum) {channel="miio:basic:vacuum:first_clean_time"}
7599+
Number:Time total_clean_time "Clean Logs - Total Clean Time" (G_vacuum) {channel="miio:basic:vacuum:total_clean_time"}
7600+
Number total_clean_times "Clean Logs - Total Clean Times" (G_vacuum) {channel="miio:basic:vacuum:total_clean_times"}
7601+
Number total_clean_area "Clean Logs - Total Clean Area" (G_vacuum) {channel="miio:basic:vacuum:total_clean_area"}
7602+
Number auto_collect "Collect Dust - Auto Collect" (G_vacuum) {channel="miio:basic:vacuum:auto_collect"}
7603+
Number clean_times "Collect Dust - Clean Times" (G_vacuum) {channel="miio:basic:vacuum:clean_times"}
7604+
Number dust_enable "Collect Dust - Dust Enable" (G_vacuum) {channel="miio:basic:vacuum:dust_enable"}
7605+
```
7606+
74977607
### DreameBot L10s Ultra (dreame.vacuum.r2228o) item file lines
74987608

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

bundles/org.openhab.binding.miio/src/main/java/org/openhab/binding/miio/internal/MiIoDevices.java

+1
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ public enum MiIoDevices {
7777
DREAME_VACUUM_P2156O("dreame.vacuum.p2156o", "MOVA Z500 Robot Vacuum and Mop Cleaner", THING_TYPE_BASIC),
7878
DREAME_VACUUM_P2157("dreame.vacuum.p2157", "MOVA L600 Robot Vacuum and Mop Cleaner", THING_TYPE_BASIC),
7979
DREAME_VACUUM_P2259("dreame.vacuum.p2259", "Dreame Bot D9 Max", THING_TYPE_BASIC),
80+
DREAME_VACUUM_R2209("dreame.vacuum.r2209", "Xiaomi Robot Vacuum X10", THING_TYPE_BASIC),
8081
DREAME_VACUUM_R2228O("dreame.vacuum.r2228o", "DreameBot L10s Ultra", THING_TYPE_BASIC),
8182
HUAYI_LIGHT_ARI013("huayi.light.ari013", "HUIZUO ARIES For Bedroom", THING_TYPE_BASIC),
8283
HUAYI_LIGHT_ARIES("huayi.light.aries", "HUIZUO ARIES For Living Room", THING_TYPE_BASIC),

0 commit comments

Comments
 (0)