[miio] add support 5 zhimi heaters (#10231)

* [miio] Add zhimi heaters

add new
zhimi.heater.ma2 Mi Smart Space Heater S
zhimi.heater.ma3 Mi Smart Baseboard Heater E
zhimi.heater.mc2 Mi Smart Space Heater S
zhimi.heater.na1 Smartmi Smart Fan
zhimi.heater.nb1 Smartmi Smart Fan Heater

improving existing
zhimi.heater.za1 Smartmi Radiant Heater Smart Version
zhimi.heater.za2 Smartmi Smart Convector Heater 1S
zhimi.heater.zb1 Smartmi Smart Convector Heater 1S

* [miio] add some more options
* remove accidental development file
* [miio] fix number:duration
* [miio] remove channeltype from heaters

Signed-off-by: Marcel Verpaalen <marcel@verpaalen.com>
This commit is contained in:
Marcel 2021-02-26 00:45:56 +01:00 committed by GitHub
parent cdf044c070
commit d16bb98ed3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 1797 additions and 94 deletions

View File

@ -466,6 +466,11 @@ Currently the miio binding supports more than 270 different models.
| Smartmi Standing Fan 2 | miio:basic | [zhimi.fan.za3](#zhimi-fan-za3) | Yes | |
| Smartmi Standing Fan 2S | miio:basic | [zhimi.fan.za4](#zhimi-fan-za4) | Yes | |
| Smartmi Standing Fan 3 | miio:basic | [zhimi.fan.za5](#zhimi-fan-za5) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Mi Smart Space Heater S | miio:basic | [zhimi.heater.ma2](#zhimi-heater-ma2) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Mi Smart Baseboard Heater E | miio:basic | [zhimi.heater.ma3](#zhimi-heater-ma3) | Yes | Identified manual actions for execution<br />`action{"did":"private-service-toggle-switch","siid":8,"aiid":1,"in":[]}`<br />Please test and feedback if they are working to they can be linked to a channel.<br />Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Mi Smart Space Heater S | miio:basic | [zhimi.heater.mc2](#zhimi-heater-mc2) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Smartmi Smart Fan | miio:basic | [zhimi.heater.na1](#zhimi-heater-na1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Smartmi Smart Fan Heater | miio:basic | [zhimi.heater.nb1](#zhimi-heater-nb1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Smartmi Radiant Heater Smart Version | miio:basic | [zhimi.heater.za1](#zhimi-heater-za1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Smartmi Smart Convector Heater 1S | miio:basic | [zhimi.heater.za2](#zhimi-heater-za2) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
| Smartmi Smart Convector Heater 1S | miio:basic | [zhimi.heater.zb1](#zhimi-heater-zb1) | Yes | Experimental support. Please report back if all channels are functional. Preferably share the debug log of property refresh and command responses |
@ -525,14 +530,14 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
|----------------------|----------------------|------------------------------------------|------------|
| on | Switch | Power | |
| temperature | Number:Temperature | Temperature | |
| working-time | Number:Duration | Working Time | |
| working-time | Number:Time | Working Time | |
| on1 | Switch | Indicator Light - Switch Status | |
| power-consumption | Number:Energy | Daily Power Consumption | |
| electric-current | Number:Current | Power Consumption - Electric Current | |
| voltage | Number:ElectricPotential | Power Consumption - Voltage | |
| electric-power | Number:Power | Current Power Consumption - Electric Power | |
| on-duration | Number:Duration | Imilab Timer - On Duration | |
| off-duration | Number:Duration | Imilab Timer - Off Duration | |
| on-duration | Number:Time | Imilab Timer - On Duration | |
| off-duration | Number:Time | Imilab Timer - Off Duration | |
| countdown | Number:Time | Imilab Timer - Countdown | |
| task-switch | Switch | Imilab Timer - Task Switch | |
| countdown-info | Switch | Imilab Timer - Countdown Info | |
@ -2100,7 +2105,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2124,7 +2129,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2148,7 +2153,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2172,7 +2177,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2196,7 +2201,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2220,7 +2225,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2244,7 +2249,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2268,7 +2273,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2292,7 +2297,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2316,7 +2321,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2340,7 +2345,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2364,7 +2369,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2388,7 +2393,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2412,7 +2417,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2436,7 +2441,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2460,7 +2465,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2484,7 +2489,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2508,7 +2513,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2532,7 +2537,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -2556,7 +2561,7 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| elec-count | Number | Electricity - Count | |
| clean | String | Maintenance - Clean | |
| examine | String | Maintenance - Examine | |
| running-duration | Number:Duration | Maintenance - Running Duration | |
| running-duration | Number:Time | Maintenance - Running Duration | |
| fan-percent | Number:Dimentionless | Fan Speed % | |
| timer | String | Enhance - Timer | |
@ -4401,6 +4406,85 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| ac_state | Switch | Custom Service - Ac State | |
| speed_level | Number:Dimensionless | Custom Service - Speed Level | |
### Mi Smart Space Heater S (<a name="zhimi-heater-ma2">zhimi.heater.ma2</a>) Channels
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| on | Switch | Heater - Switch Status | |
| fault | Number | Heater - Fault | Value mapping ["0"="No Error","1"="NTC Connect Error","2"="High Temperature Alarm","3"="EEPROM Error","4"="Multi Errors"] |
| target_temperature | Number:Temperature | Heater - Target Temperature | |
| countdown_time | Number:Time | Countdown - Countdown Time | |
| temperature | Number:Temperature | Environment - Temperature | |
| physical_controls_locked | Switch | Physical Control Locked - Physical Control Locked | |
| alarm | Switch | Alarm - Alarm | |
| brightness | Number:Dimensionless | Indicator Light - Brightness | Value mapping ["0"="Bright","1"="Dark","2"="Extinguished"] |
| hw_enable | Switch | Private Service - Hw Enable | |
| use_time | Number:Time | Private Service - Use Time | |
### Mi Smart Baseboard Heater E (<a name="zhimi-heater-ma3">zhimi.heater.ma3</a>) Channels
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| actions | String | Actions | |
| on | Switch | Heater - Switch Status | |
| fault | Number | Heater - Fault | Value mapping ["0"="No Error","1"="NTC Connect Error","2"="High Temperature Alarm","3"="EEPROM Error","4"="Multi Errors"] |
| target_temperature | Number:Temperature | Heater - Target Temperature | |
| mode | Number | Heater - Mode | Value mapping ["0"="Auto","1"="LL Mode","2"="HH Mode"] |
| countdown_time | Number:Time | Countdown - Countdown Time | |
| temperature | Number:Temperature | Environment - Temperature | |
| physical_controls_locked | Switch | Physical Control Locked - Physical Control Locked | |
| alarm | Switch | Alarm - Alarm | |
| brightness | Number:Dimensionless | Indicator Light - Brightness | Value mapping ["0"="Bright","1"="Dark","2"="Extinguished"] |
| use_time | Number:Time | Private Service - Use Time | |
### Mi Smart Space Heater S (<a name="zhimi-heater-mc2">zhimi.heater.mc2</a>) Channels
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| on | Switch | Heater - Power | |
| fault | Number | Heater - Device Fault | Value mapping ["0"="No Error","1"="NTC Connect Error","2"="High Temperature Alarm","3"="EEPROM Error","4"="Multi Errors"] |
| target_temperature | Number:Temperature | Heater - Target Temperature | |
| countdown_time | Number:Time | Countdown - Countdown Time | |
| temperature | Number:Temperature | Environment - Temperature | |
| physical_controls_locked | Switch | Physical Control Locked - Physical Control Locked | |
| alarm | Switch | Alarm - Alarm | |
| brightness | Number | Indicator Light - Brightness | Value mapping ["0"="Bright","1"="Dark","2"="Extinguished"] |
| hw_enable | Switch | Private Service - Hw Enable | |
| use_time | Number:Time | Private Service - Use Time | |
| country_code | Number | Private Service - Country Code | Value mapping ["0"="Unknown","1"="US","82"="KR","44"="EU","81"="JP","7"="RU","86"="CN","852"="HK","886"="TW","33"="FR"] |
### Smartmi Smart Fan (<a name="zhimi-heater-na1">zhimi.heater.na1</a>) Channels
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| on | Switch | Heater - Power | |
| fault | Number | Heater - Device Fault | Value mapping ["0"="No Error","1"="NTC Connect Error","2"="High Temperature Alarm","3"="EEPROM Error","4"="Multi Errors"] |
| heat_level | Number | Heater - Heat Level | Value mapping ["1"="High","2"="Low"] |
| mode | Number | Heater - Mode | Value mapping ["0"="Fan not swing","1"="Fan swing"] |
| alarm | Switch | Alarm - Alarm | |
| countdown_time | Number:Time | Countdown - Countdown Time | |
| brightness | Number | Indicator Light - Brightness | Value mapping ["0"="Bright","1"="Dark","2"="Extinguished"] |
| physical_controls_locked | Switch | Physical Control Locked - Physical Control Locked | |
| return_to_middle | Switch | Private Service - Return To Middle | |
### Smartmi Smart Fan Heater (<a name="zhimi-heater-nb1">zhimi.heater.nb1</a>) Channels
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| on | Switch | Heater - Power | |
| fault | Number | Heater - Device Fault | Value mapping ["0"="No Error","1"="NTC Connect Error","2"="High Temperature Alarm","3"="EEPROM Error","4"="Multi Errors"] |
| heat_level | Number | Heater - Heat Level | Value mapping ["1"="High","2"="Low"] |
| mode | Number | Heater - Mode | Value mapping ["0"="Fan not swing","1"="Fan swing"] |
| target_temperature | Number:Temperature | Heater - Target Temperature | |
| temperature | Number:Temperature | Environment - Temperature | |
| alarm | Switch | Alarm - Alarm | |
| countdown_time | Number:Time | Countdown - Countdown Time | |
| brightness | Number | Indicator Light - Brightness | Value mapping ["0"="Bright","1"="Dark","2"="Extinguished"] |
| physical_controls_locked | Switch | Physical Control Locked - Physical Control Locked | |
| return_to_middle | Switch | Private Service - Return To Middle | |
| country_code | Number | Private Service - Country Code | Value mapping ["0"="Unknown","1"="US","82"="KR","44"="EU","81"="JP","7"="RU","86"="CN","852"="HK","886"="TW","33"="FR"] |
| hw_en | Switch | Private Service - Hw En | |
### Smartmi Radiant Heater Smart Version (<a name="zhimi-heater-za1">zhimi.heater.za1</a>) Channels
| Channel | Type | Description | Comment |
@ -4419,14 +4503,14 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| fault | Number | Heater - Device Fault | |
| fault | Number | Heater - Device Fault | Value mapping ["0"="No Error","1"="NTC Connect Error","2"="High Temperature Alarm","3"="EEPROM Error","4"="Multi Errors"] |
| on | Switch | Heater - Power | |
| target-temperature | Number:Temperature | Heater - Target Temperature | |
| alarm | Switch | Alarm - Alarm | |
| countdown-time | Number:Time | Countdown - Countdown Time | |
| relative-humidity | Number:Dimensionless | Environment - Relative Humidity | |
| temperature | Number:Temperature | Environment - Temperature | |
| brightness | Dimmer | Indicator Light - Brightness | |
| brightness | Number | Indicator Light - Brightness | Value mapping ["0"="Bright","1"="Dark","2"="Extinguished"] |
| physical-controls-locked | Switch | Physical Control Locked - Physical Controls Locked | |
| use-time | Number:Time | Private-Service - Use Time | |
@ -4434,14 +4518,14 @@ e.g. `openhab:send actionCommand 'upd_timer["1498595904821", "on"]'` would enabl
| Channel | Type | Description | Comment |
|----------------------|----------------------|------------------------------------------|------------|
| fault | Number | Heater - Device Fault | |
| on | Switch | Heater - Power | |
| fault | Number | Heater - Device Fault | Value mapping ["0"="No Error","1"="NTC Connect Error","2"="High Temperature Alarm","3"="EEPROM Error","4"="Multi Errors"] |
| target-temperature | Number:Temperature | Heater - Target Temperature | |
| alarm | Switch | Alarm - Alarm | |
| countdown-time | Number:Time | Countdown - Countdown Time | |
| relative-humidity | Number:Dimensionless | Environment - Relative Humidity | |
| temperature | Number:Temperature | Environment - Temperature | |
| brightness | Dimmer | Indicator Light - Brightness | |
| brightness | Number | Indicator Light - Brightness | Value mapping ["0"="Bright","1"="Dark","2"="Extinguished"] |
| physical-controls-locked | Switch | Physical Control Locked - Physical Controls Locked | |
| use-time | Number:Time | Private-Service - Use Time | |
| country-code | Number | Private-Service - Country-Code | Value mapping ["0"="Unknown","1"="US","82"="KR","44"="EU","81"="JP","7"="RU","86"="CN","852"="HK","886"="TW","33"="FR"] |
@ -4668,14 +4752,14 @@ note: Autogenerated example. Replace the id (plug) in the channel with your own.
Group G_plug "Mi Smart Power Plug 2 (Wi-Fi and Bluetooth Gateway)" <status>
Switch on "Power" (G_plug) {channel="miio:basic:plug:on"}
Number:Temperature temperature "Temperature" (G_plug) {channel="miio:basic:plug:temperature"}
Number:Duration working_time "Working Time" (G_plug) {channel="miio:basic:plug:working-time"}
Number:Time working_time "Working Time" (G_plug) {channel="miio:basic:plug:working-time"}
Switch on1 "Indicator Light - Switch Status" (G_plug) {channel="miio:basic:plug:on1"}
Number:Energy power_consumption "Daily Power Consumption" (G_plug) {channel="miio:basic:plug:power-consumption"}
Number:Current electric_current "Power Consumption - Electric Current" (G_plug) {channel="miio:basic:plug:electric-current"}
Number:ElectricPotential voltage "Power Consumption - Voltage" (G_plug) {channel="miio:basic:plug:voltage"}
Number:Power electric_power "Current Power Consumption - Electric Power" (G_plug) {channel="miio:basic:plug:electric-power"}
Number:Duration on_duration "Imilab Timer - On Duration" (G_plug) {channel="miio:basic:plug:on-duration"}
Number:Duration off_duration "Imilab Timer - Off Duration" (G_plug) {channel="miio:basic:plug:off-duration"}
Number:Time on_duration "Imilab Timer - On Duration" (G_plug) {channel="miio:basic:plug:on-duration"}
Number:Time off_duration "Imilab Timer - Off Duration" (G_plug) {channel="miio:basic:plug:off-duration"}
Number:Time countdown "Imilab Timer - Countdown" (G_plug) {channel="miio:basic:plug:countdown"}
Switch task_switch "Imilab Timer - Task Switch" (G_plug) {channel="miio:basic:plug:task-switch"}
Switch countdown_info "Imilab Timer - Countdown Info" (G_plug) {channel="miio:basic:plug:countdown-info"}
@ -6576,7 +6660,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6603,7 +6687,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6630,7 +6714,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6657,7 +6741,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6684,7 +6768,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6711,7 +6795,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6738,7 +6822,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6765,7 +6849,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6792,7 +6876,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6819,7 +6903,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6846,7 +6930,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6873,7 +6957,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6900,7 +6984,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6927,7 +7011,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6954,7 +7038,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -6981,7 +7065,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -7008,7 +7092,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -7035,7 +7119,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -7062,7 +7146,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -7089,7 +7173,7 @@ Number:Energy electricity "Power consumption accumulation in kWh" (G_airconditio
Number elec_count "Electricity - Count" (G_aircondition) {channel="miio:basic:aircondition:elec-count"}
String clean "Maintenance - Clean" (G_aircondition) {channel="miio:basic:aircondition:clean"}
String examine "Maintenance - Examine" (G_aircondition) {channel="miio:basic:aircondition:examine"}
Number:Duration running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Time running_duration "Maintenance - Running Duration" (G_aircondition) {channel="miio:basic:aircondition:running-duration"}
Number:Dimentionless fan_percent "Fan Speed %" (G_aircondition) {channel="miio:basic:aircondition:fan-percent"}
String timer "Enhance - Timer" (G_aircondition) {channel="miio:basic:aircondition:timer"}
```
@ -9247,6 +9331,100 @@ Switch ac_state "Custom Service - Ac State" (G_fan) {channel="miio:basic:fan:ac_
Number:Dimensionless speed_level "Custom Service - Speed Level" (G_fan) {channel="miio:basic:fan:speed_level"}
```
### Mi Smart Space Heater S (zhimi.heater.ma2) item file lines
note: Autogenerated example. Replace the id (heater) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```
Group G_heater "Mi Smart Space Heater S" <status>
Switch on "Heater - Switch Status" (G_heater) {channel="miio:basic:heater:on"}
Number fault "Heater - Fault" (G_heater) {channel="miio:basic:heater:fault"}
Number:Temperature target_temperature "Heater - Target Temperature" (G_heater) {channel="miio:basic:heater:target_temperature"}
Number:Time countdown_time "Countdown - Countdown Time" (G_heater) {channel="miio:basic:heater:countdown_time"}
Number:Temperature temperature "Environment - Temperature" (G_heater) {channel="miio:basic:heater:temperature"}
Switch physical_controls_locked "Physical Control Locked - Physical Control Locked" (G_heater) {channel="miio:basic:heater:physical_controls_locked"}
Switch alarm "Alarm - Alarm" (G_heater) {channel="miio:basic:heater:alarm"}
Number:Dimensionless brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Switch hw_enable "Private Service - Hw Enable" (G_heater) {channel="miio:basic:heater:hw_enable"}
Number:Time use_time "Private Service - Use Time" (G_heater) {channel="miio:basic:heater:use_time"}
```
### Mi Smart Baseboard Heater E (zhimi.heater.ma3) item file lines
note: Autogenerated example. Replace the id (heater) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```
Group G_heater "Mi Smart Baseboard Heater E" <status>
String actions "Actions" (G_heater) {channel="miio:basic:heater:actions"}
Switch on "Heater - Switch Status" (G_heater) {channel="miio:basic:heater:on"}
Number fault "Heater - Fault" (G_heater) {channel="miio:basic:heater:fault"}
Number:Temperature target_temperature "Heater - Target Temperature" (G_heater) {channel="miio:basic:heater:target_temperature"}
Number mode "Heater - Mode" (G_heater) {channel="miio:basic:heater:mode"}
Number:Time countdown_time "Countdown - Countdown Time" (G_heater) {channel="miio:basic:heater:countdown_time"}
Number:Temperature temperature "Environment - Temperature" (G_heater) {channel="miio:basic:heater:temperature"}
Switch physical_controls_locked "Physical Control Locked - Physical Control Locked" (G_heater) {channel="miio:basic:heater:physical_controls_locked"}
Switch alarm "Alarm - Alarm" (G_heater) {channel="miio:basic:heater:alarm"}
Number:Dimensionless brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Number:Time use_time "Private Service - Use Time" (G_heater) {channel="miio:basic:heater:use_time"}
```
### Mi Smart Space Heater S (zhimi.heater.mc2) item file lines
note: Autogenerated example. Replace the id (heater) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```
Group G_heater "Mi Smart Space Heater S" <status>
Switch on "Heater - Power" (G_heater) {channel="miio:basic:heater:on"}
Number fault "Heater - Device Fault" (G_heater) {channel="miio:basic:heater:fault"}
Number:Temperature target_temperature "Heater - Target Temperature" (G_heater) {channel="miio:basic:heater:target_temperature"}
Number:Time countdown_time "Countdown - Countdown Time" (G_heater) {channel="miio:basic:heater:countdown_time"}
Number:Temperature temperature "Environment - Temperature" (G_heater) {channel="miio:basic:heater:temperature"}
Switch physical_controls_locked "Physical Control Locked - Physical Control Locked" (G_heater) {channel="miio:basic:heater:physical_controls_locked"}
Switch alarm "Alarm - Alarm" (G_heater) {channel="miio:basic:heater:alarm"}
Number brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Switch hw_enable "Private Service - Hw Enable" (G_heater) {channel="miio:basic:heater:hw_enable"}
Number:Time use_time "Private Service - Use Time" (G_heater) {channel="miio:basic:heater:use_time"}
Number country_code "Private Service - Country Code" (G_heater) {channel="miio:basic:heater:country_code"}
```
### Smartmi Smart Fan (zhimi.heater.na1) item file lines
note: Autogenerated example. Replace the id (heater) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```
Group G_heater "Smartmi Smart Fan" <status>
Switch on "Heater - Power" (G_heater) {channel="miio:basic:heater:on"}
Number fault "Heater - Device Fault" (G_heater) {channel="miio:basic:heater:fault"}
Number heat_level "Heater - Heat Level" (G_heater) {channel="miio:basic:heater:heat_level"}
Number mode "Heater - Mode" (G_heater) {channel="miio:basic:heater:mode"}
Switch alarm "Alarm - Alarm" (G_heater) {channel="miio:basic:heater:alarm"}
Number:Time countdown_time "Countdown - Countdown Time" (G_heater) {channel="miio:basic:heater:countdown_time"}
Number brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Switch physical_controls_locked "Physical Control Locked - Physical Control Locked" (G_heater) {channel="miio:basic:heater:physical_controls_locked"}
Switch return_to_middle "Private Service - Return To Middle" (G_heater) {channel="miio:basic:heater:return_to_middle"}
```
### Smartmi Smart Fan Heater (zhimi.heater.nb1) item file lines
note: Autogenerated example. Replace the id (heater) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
```
Group G_heater "Smartmi Smart Fan Heater" <status>
Switch on "Heater - Power" (G_heater) {channel="miio:basic:heater:on"}
Number fault "Heater - Device Fault" (G_heater) {channel="miio:basic:heater:fault"}
Number heat_level "Heater - Heat Level" (G_heater) {channel="miio:basic:heater:heat_level"}
Number mode "Heater - Mode" (G_heater) {channel="miio:basic:heater:mode"}
Number:Temperature target_temperature "Heater - Target Temperature" (G_heater) {channel="miio:basic:heater:target_temperature"}
Number:Temperature temperature "Environment - Temperature" (G_heater) {channel="miio:basic:heater:temperature"}
Switch alarm "Alarm - Alarm" (G_heater) {channel="miio:basic:heater:alarm"}
Number:Time countdown_time "Countdown - Countdown Time" (G_heater) {channel="miio:basic:heater:countdown_time"}
Number brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Switch physical_controls_locked "Physical Control Locked - Physical Control Locked" (G_heater) {channel="miio:basic:heater:physical_controls_locked"}
Switch return_to_middle "Private Service - Return To Middle" (G_heater) {channel="miio:basic:heater:return_to_middle"}
Number country_code "Private Service - Country Code" (G_heater) {channel="miio:basic:heater:country_code"}
Switch hw_en "Private Service - Hw En" (G_heater) {channel="miio:basic:heater:hw_en"}
```
### Smartmi Radiant Heater Smart Version (zhimi.heater.za1) item file lines
note: Autogenerated example. Replace the id (heater) in the channel with your own. Replace `basic` with `generic` in the thing UID depending on how your thing was discovered.
@ -9277,7 +9455,7 @@ Switch alarm "Alarm - Alarm" (G_heater) {channel="miio:basic:heater:alarm"}
Number:Time countdown_time "Countdown - Countdown Time" (G_heater) {channel="miio:basic:heater:countdown-time"}
Number:Dimensionless relative_humidity "Environment - Relative Humidity" (G_heater) {channel="miio:basic:heater:relative-humidity"}
Number:Temperature temperature "Environment - Temperature" (G_heater) {channel="miio:basic:heater:temperature"}
Dimmer brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Number brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Switch physical_controls_locked "Physical Control Locked - Physical Controls Locked" (G_heater) {channel="miio:basic:heater:physical-controls-locked"}
Number:Time use_time "Private-Service - Use Time" (G_heater) {channel="miio:basic:heater:use-time"}
```
@ -9288,14 +9466,14 @@ note: Autogenerated example. Replace the id (heater) in the channel with your ow
```
Group G_heater "Smartmi Smart Convector Heater 1S" <status>
Number fault "Heater - Device Fault" (G_heater) {channel="miio:basic:heater:fault"}
Switch on "Heater - Power" (G_heater) {channel="miio:basic:heater:on"}
Number fault "Heater - Device Fault" (G_heater) {channel="miio:basic:heater:fault"}
Number:Temperature target_temperature "Heater - Target Temperature" (G_heater) {channel="miio:basic:heater:target-temperature"}
Switch alarm "Alarm - Alarm" (G_heater) {channel="miio:basic:heater:alarm"}
Number:Time countdown_time "Countdown - Countdown Time" (G_heater) {channel="miio:basic:heater:countdown-time"}
Number:Dimensionless relative_humidity "Environment - Relative Humidity" (G_heater) {channel="miio:basic:heater:relative-humidity"}
Number:Temperature temperature "Environment - Temperature" (G_heater) {channel="miio:basic:heater:temperature"}
Dimmer brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Number brightness "Indicator Light - Brightness" (G_heater) {channel="miio:basic:heater:brightness"}
Switch physical_controls_locked "Physical Control Locked - Physical Controls Locked" (G_heater) {channel="miio:basic:heater:physical-controls-locked"}
Number:Time use_time "Private-Service - Use Time" (G_heater) {channel="miio:basic:heater:use-time"}
Number country_code "Private-Service - Country-Code" (G_heater) {channel="miio:basic:heater:country-code"}

View File

@ -350,6 +350,11 @@ public enum MiIoDevices {
ZHIMI_FAN_ZA3("zhimi.fan.za3", "Smartmi Standing Fan 2", THING_TYPE_BASIC),
ZHIMI_FAN_ZA4("zhimi.fan.za4", "Smartmi Standing Fan 2S", THING_TYPE_BASIC),
ZHIMI_FAN_ZA5("zhimi.fan.za5", "Smartmi Standing Fan 3 ", THING_TYPE_BASIC),
ZHIMI_HEATER_MA2("zhimi.heater.ma2", "Mi Smart Space Heater S", THING_TYPE_BASIC),
ZHIMI_HEATER_MA3("zhimi.heater.ma3", "Mi Smart Baseboard Heater E", THING_TYPE_BASIC),
ZHIMI_HEATER_MC2("zhimi.heater.mc2", "Mi Smart Space Heater S", THING_TYPE_BASIC),
ZHIMI_HEATER_NA1("zhimi.heater.na1", "Smartmi Smart Fan", THING_TYPE_BASIC),
ZHIMI_HEATER_NB1("zhimi.heater.nb1", "Smartmi Smart Fan Heater", THING_TYPE_BASIC),
ZHIMI_HEATER_ZA1("zhimi.heater.za1", "Smartmi Radiant Heater Smart Version", THING_TYPE_BASIC),
ZHIMI_HEATER_ZA2("zhimi.heater.za2", "Smartmi Smart Convector Heater 1S", THING_TYPE_BASIC),
ZHIMI_HEATER_ZB1("zhimi.heater.zb1", "Smartmi Smart Convector Heater 1S", THING_TYPE_BASIC),

View File

@ -54,7 +54,7 @@
"piid": 7,
"friendlyName": "Working Time",
"channel": "working-time",
"type": "Number:Duration",
"type": "Number:Time",
"unit": "minutes",
"stateDescription": {
"minimum": 0,
@ -184,7 +184,7 @@
"piid": 1,
"friendlyName": "Imilab Timer - On Duration",
"channel": "on-duration",
"type": "Number:Duration",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,
@ -207,7 +207,7 @@
"piid": 2,
"friendlyName": "Imilab Timer - Off Duration",
"channel": "off-duration",
"type": "Number:Duration",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,

View File

@ -405,7 +405,7 @@
"piid": 5,
"friendlyName": "Maintenance - Running Duration",
"channel": "running-duration",
"type": "Number:Duration",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,

View File

@ -0,0 +1,241 @@
{
"deviceMapping": {
"id": [
"zhimi.heater.ma2"
],
"propertyMethod": "get_properties",
"maxProperties": 1,
"channels": [
{
"property": "on",
"siid": 2,
"piid": 1,
"friendlyName": "Heater - Switch Status",
"channel": "on",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "switch",
"tags": [
"Switch"
]
},
{
"property": "fault",
"siid": 2,
"piid": 2,
"friendlyName": "Heater - Fault",
"channel": "fault",
"type": "Number",
"stateDescription": {
"readOnly": true,
"options": [
{
"value": "0",
"label": "No Error"
},
{
"value": "1",
"label": "NTC Connect Error"
},
{
"value": "2",
"label": "High Temperature Alarm"
},
{
"value": "3",
"label": "EEPROM Error"
},
{
"value": "4",
"label": "Multi Errors"
}
]
},
"refresh": true,
"actions": [],
"readmeComment": "Value mapping [\"0\"\u003d\"No Error\",\"1\"\u003d\"NTC Connect Error\",\"2\"\u003d\"High Temperature Alarm\",\"3\"\u003d\"EEPROM Error\",\"4\"\u003d\"Multi Errors\"]"
},
{
"property": "target-temperature",
"siid": 2,
"piid": 5,
"friendlyName": "Heater - Target Temperature",
"channel": "target_temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": 18,
"maximum": 28,
"step": 1,
"pattern": "%.1f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "temperature",
"tags": [
"Setpoint",
"Temperature"
]
},
{
"property": "countdown-time",
"siid": 3,
"piid": 1,
"friendlyName": "Countdown - Countdown Time",
"channel": "countdown_time",
"type": "Number:Time",
"unit": "hours",
"stateDescription": {
"minimum": 0,
"maximum": 12,
"step": 1,
"pattern": "%.0f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "STRING"
}
]
},
{
"property": "temperature",
"siid": 4,
"piid": 7,
"friendlyName": "Environment - Temperature",
"channel": "temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": -30,
"maximum": 100,
"pattern": "%.1f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"category": "temperature",
"tags": [
"Measurement",
"Temperature"
]
},
{
"property": "physical-controls-locked",
"siid": 5,
"piid": 1,
"friendlyName": "Physical Control Locked - Physical Control Locked",
"channel": "physical_controls_locked",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "alarm",
"siid": 6,
"piid": 1,
"friendlyName": "Alarm - Alarm",
"channel": "alarm",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "alarm"
},
{
"property": "brightness",
"siid": 7,
"piid": 3,
"friendlyName": "Indicator Light - Brightness",
"channel": "brightness",
"type": "Number:Dimensionless",
"unit": "percentage",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Bright"
},
{
"value": "1",
"label": "Dark"
},
{
"value": "2",
"label": "Extinguished"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "light",
"tags": [
"Control",
"Light"
],
"readmeComment": "Value mapping [\"0\"\u003d\"Bright\",\"1\"\u003d\"Dark\",\"2\"\u003d\"Extinguished\"]"
},
{
"property": "hw-enable",
"siid": 8,
"piid": 8,
"friendlyName": "Private Service - Hw Enable",
"channel": "hw_enable",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "use-time",
"siid": 8,
"piid": 9,
"friendlyName": "Private Service - Use Time",
"channel": "use_time",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,
"maximum": 2147483647,
"step": 1,
"pattern": "%.0f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"category": "time"
}
],
"experimental": true
}
}

View File

@ -0,0 +1,288 @@
{
"deviceMapping": {
"id": [
"zhimi.heater.ma3"
],
"propertyMethod": "get_properties",
"maxProperties": 1,
"channels": [
{
"property": "",
"friendlyName": "Actions",
"channel": "actions",
"type": "String",
"stateDescription": {
"options": [
{
"value": "private-service-toggle-switch",
"label": "Toggle Private Service"
}
]
},
"actions": [
{
"command": "action",
"parameterType": "EMPTY",
"siid": 8,
"aiid": 1,
"condition": {
"name": "matchValue",
"parameters": [
{
"matchValue": "private-service-toggle-switch"
}
]
}
}
]
},
{
"property": "on",
"siid": 2,
"piid": 1,
"friendlyName": "Heater - Switch Status",
"channel": "on",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "switch",
"tags": [
"Switch"
]
},
{
"property": "fault",
"siid": 2,
"piid": 2,
"friendlyName": "Heater - Fault",
"channel": "fault",
"type": "Number",
"stateDescription": {
"readOnly": true,
"options": [
{
"value": "0",
"label": "No Error"
},
{
"value": "1",
"label": "NTC Connect Error"
},
{
"value": "2",
"label": "High Temperature Alarm"
},
{
"value": "3",
"label": "EEPROM Error"
},
{
"value": "4",
"label": "Multi Errors"
}
]
},
"refresh": true,
"actions": [],
"readmeComment": "Value mapping [\"0\"\u003d\"No Error\",\"1\"\u003d\"NTC Connect Error\",\"2\"\u003d\"High Temperature Alarm\",\"3\"\u003d\"EEPROM Error\",\"4\"\u003d\"Multi Errors\"]"
},
{
"property": "target-temperature",
"siid": 2,
"piid": 5,
"friendlyName": "Heater - Target Temperature",
"channel": "target_temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": 16,
"maximum": 28,
"step": 1,
"pattern": "%.1f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "temperature",
"tags": [
"Setpoint",
"Temperature"
]
},
{
"property": "mode",
"siid": 2,
"piid": 6,
"friendlyName": "Heater - Mode",
"channel": "mode",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Auto"
},
{
"value": "1",
"label": "LL Mode"
},
{
"value": "2",
"label": "HH Mode"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"readmeComment": "Value mapping [\"0\"\u003d\"Auto\",\"1\"\u003d\"LL Mode\",\"2\"\u003d\"HH Mode\"]"
},
{
"property": "countdown-time",
"siid": 3,
"piid": 1,
"friendlyName": "Countdown - Countdown Time",
"channel": "countdown_time",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,
"maximum": 43200,
"step": 1,
"pattern": "%.0f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "STRING"
}
]
},
{
"property": "temperature",
"siid": 4,
"piid": 7,
"friendlyName": "Environment - Temperature",
"channel": "temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": -30,
"maximum": 100,
"pattern": "%.1f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"category": "temperature",
"tags": [
"Measurement",
"Temperature"
]
},
{
"property": "physical-controls-locked",
"siid": 5,
"piid": 1,
"friendlyName": "Physical Control Locked - Physical Control Locked",
"channel": "physical_controls_locked",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "alarm",
"siid": 6,
"piid": 1,
"friendlyName": "Alarm - Alarm",
"channel": "alarm",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "alarm"
},
{
"property": "brightness",
"siid": 7,
"piid": 3,
"friendlyName": "Indicator Light - Brightness",
"channel": "brightness",
"type": "Number:Dimensionless",
"unit": "percentage",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Bright"
},
{
"value": "1",
"label": "Dark"
},
{
"value": "2",
"label": "Extinguished"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "light",
"tags": [
"Control",
"Light"
],
"readmeComment": "Value mapping [\"0\"\u003d\"Bright\",\"1\"\u003d\"Dark\",\"2\"\u003d\"Extinguished\"]"
},
{
"property": "use-time",
"siid": 8,
"piid": 9,
"friendlyName": "Private Service - Use Time",
"channel": "use_time",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,
"maximum": 2147483647,
"step": 1,
"pattern": "%.0f %unit%",
"readOnly": true
},
"refresh": true,
"actions": []
}
],
"readmeComment": "Identified manual actions for execution\u003cbr /\u003e`action{\"did\":\"private-service-toggle-switch\",\"siid\":8,\"aiid\":1,\"in\":[]}`\u003cbr /\u003ePlease test and feedback if they are working to they can be linked to a channel.",
"experimental": true
}
}

View File

@ -0,0 +1,299 @@
{
"deviceMapping": {
"id": [
"zhimi.heater.mc2"
],
"propertyMethod": "get_properties",
"maxProperties": 1,
"channels": [
{
"property": "on",
"siid": 2,
"piid": 1,
"friendlyName": "Heater - Power",
"channel": "on",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "switch",
"tags": [
"Switch"
]
},
{
"property": "fault",
"siid": 2,
"piid": 2,
"friendlyName": "Heater - Device Fault",
"channel": "fault",
"type": "Number",
"stateDescription": {
"readOnly": true,
"options": [
{
"value": "0",
"label": "No Error"
},
{
"value": "1",
"label": "NTC Connect Error"
},
{
"value": "2",
"label": "High Temperature Alarm"
},
{
"value": "3",
"label": "EEPROM Error"
},
{
"value": "4",
"label": "Multi Errors"
}
]
},
"refresh": true,
"actions": [],
"readmeComment": "Value mapping [\"0\"\u003d\"No Error\",\"1\"\u003d\"NTC Connect Error\",\"2\"\u003d\"High Temperature Alarm\",\"3\"\u003d\"EEPROM Error\",\"4\"\u003d\"Multi Errors\"]"
},
{
"property": "target-temperature",
"siid": 2,
"piid": 5,
"friendlyName": "Heater - Target Temperature",
"channel": "target_temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": 18,
"maximum": 28,
"step": 1,
"pattern": "%.1f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "temperature",
"tags": [
"Setpoint",
"Temperature"
]
},
{
"property": "countdown-time",
"siid": 3,
"piid": 1,
"friendlyName": "Countdown - Countdown Time",
"channel": "countdown_time",
"type": "Number:Time",
"unit": "hours",
"stateDescription": {
"minimum": 0,
"maximum": 12,
"step": 1,
"pattern": "%.0f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "STRING"
}
]
},
{
"property": "temperature",
"siid": 4,
"piid": 7,
"friendlyName": "Environment - Temperature",
"channel": "temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": -30,
"maximum": 100,
"pattern": "%.1f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"category": "temperature",
"tags": [
"Measurement",
"Temperature"
]
},
{
"property": "physical-controls-locked",
"siid": 5,
"piid": 1,
"friendlyName": "Physical Control Locked - Physical Control Locked",
"channel": "physical_controls_locked",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "alarm",
"siid": 6,
"piid": 1,
"friendlyName": "Alarm - Alarm",
"channel": "alarm",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "alarm"
},
{
"property": "brightness",
"siid": 7,
"piid": 3,
"friendlyName": "Indicator Light - Brightness",
"channel": "brightness",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Bright"
},
{
"value": "1",
"label": "Dark"
},
{
"value": "2",
"label": "Extinguished"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "light",
"tags": [
"Control",
"Light"
],
"readmeComment": "Value mapping [\"0\"\u003d\"Bright\",\"1\"\u003d\"Dark\",\"2\"\u003d\"Extinguished\"]"
},
{
"property": "hw-enable",
"siid": 8,
"piid": 8,
"friendlyName": "Private Service - Hw Enable",
"channel": "hw_enable",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "use-time",
"siid": 8,
"piid": 9,
"friendlyName": "Private Service - Use Time",
"channel": "use_time",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,
"maximum": 2147483647,
"step": 1,
"pattern": "%.0f %unit%",
"readOnly": true
},
"refresh": true,
"actions": []
},
{
"property": "country-code",
"siid": 8,
"piid": 10,
"friendlyName": "Private Service - Country Code",
"channel": "country_code",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Unknown"
},
{
"value": "1",
"label": "US"
},
{
"value": "82",
"label": "KR"
},
{
"value": "44",
"label": "EU"
},
{
"value": "81",
"label": "JP"
},
{
"value": "7",
"label": "RU"
},
{
"value": "86",
"label": "CN"
},
{
"value": "852",
"label": "HK"
},
{
"value": "886",
"label": "TW"
},
{
"value": "33",
"label": "FR"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"readmeComment": "Value mapping [\"0\"\u003d\"Unknown\",\"1\"\u003d\"US\",\"82\"\u003d\"KR\",\"44\"\u003d\"EU\",\"81\"\u003d\"JP\",\"7\"\u003d\"RU\",\"86\"\u003d\"CN\",\"852\"\u003d\"HK\",\"886\"\u003d\"TW\",\"33\"\u003d\"FR\"]"
}
],
"experimental": true
}
}

View File

@ -0,0 +1,228 @@
{
"deviceMapping": {
"id": [
"zhimi.heater.na1"
],
"propertyMethod": "get_properties",
"maxProperties": 1,
"channels": [
{
"property": "on",
"siid": 2,
"piid": 2,
"friendlyName": "Heater - Power",
"channel": "on",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "switch",
"tags": [
"Switch"
]
},
{
"property": "fault",
"siid": 2,
"piid": 1,
"friendlyName": "Heater - Device Fault",
"channel": "fault",
"type": "Number",
"stateDescription": {
"readOnly": true,
"options": [
{
"value": "0",
"label": "No Error"
},
{
"value": "1",
"label": "NTC Connect Error"
},
{
"value": "2",
"label": "High Temperature Alarm"
},
{
"value": "3",
"label": "EEPROM Error"
},
{
"value": "4",
"label": "Multi Errors"
}
]
},
"refresh": true,
"actions": [],
"readmeComment": "Value mapping [\"0\"\u003d\"No Error\",\"1\"\u003d\"NTC Connect Error\",\"2\"\u003d\"High Temperature Alarm\",\"3\"\u003d\"EEPROM Error\",\"4\"\u003d\"Multi Errors\"]"
},
{
"property": "heat-level",
"siid": 2,
"piid": 3,
"friendlyName": "Heater - Heat Level",
"channel": "heat_level",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "1",
"label": "High"
},
{
"value": "2",
"label": "Low"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"readmeComment": "Value mapping [\"1\"\u003d\"High\",\"2\"\u003d\"Low\"]"
},
{
"property": "mode",
"siid": 2,
"piid": 4,
"friendlyName": "Heater - Mode",
"channel": "mode",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Fan not swing"
},
{
"value": "1",
"label": "Fan swing"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"readmeComment": "Value mapping [\"0\"\u003d\"Fan not swing\",\"1\"\u003d\"Fan swing\"]"
},
{
"property": "alarm",
"siid": 3,
"piid": 1,
"friendlyName": "Alarm - Alarm",
"channel": "alarm",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "alarm"
},
{
"property": "countdown-time",
"siid": 4,
"piid": 1,
"friendlyName": "Countdown - Countdown Time",
"channel": "countdown_time",
"type": "Number:Time",
"unit": "hours",
"stateDescription": {
"minimum": 0,
"maximum": 12,
"step": 1,
"pattern": "%.0f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "STRING"
}
]
},
{
"property": "brightness",
"siid": 6,
"piid": 1,
"friendlyName": "Indicator Light - Brightness",
"channel": "brightness",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Bright"
},
{
"value": "1",
"label": "Dark"
},
{
"value": "2",
"label": "Extinguished"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "light",
"tags": [
"Control",
"Light"
],
"readmeComment": "Value mapping [\"0\"\u003d\"Bright\",\"1\"\u003d\"Dark\",\"2\"\u003d\"Extinguished\"]"
},
{
"property": "physical-controls-locked",
"siid": 7,
"piid": 1,
"friendlyName": "Physical Control Locked - Physical Control Locked",
"channel": "physical_controls_locked",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "return-to-middle",
"siid": 8,
"piid": 3,
"friendlyName": "Private Service - Return To Middle",
"channel": "return_to_middle",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
}
],
"experimental": true
}
}

View File

@ -0,0 +1,342 @@
{
"deviceMapping": {
"id": [
"zhimi.heater.nb1"
],
"propertyMethod": "get_properties",
"maxProperties": 1,
"channels": [
{
"property": "on",
"siid": 2,
"piid": 2,
"friendlyName": "Heater - Power",
"channel": "on",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "switch",
"tags": [
"Switch"
]
},
{
"property": "fault",
"siid": 2,
"piid": 1,
"friendlyName": "Heater - Device Fault",
"channel": "fault",
"type": "Number",
"stateDescription": {
"readOnly": true,
"options": [
{
"value": "0",
"label": "No Error"
},
{
"value": "1",
"label": "NTC Connect Error"
},
{
"value": "2",
"label": "High Temperature Alarm"
},
{
"value": "3",
"label": "EEPROM Error"
},
{
"value": "4",
"label": "Multi Errors"
}
]
},
"refresh": true,
"actions": [],
"readmeComment": "Value mapping [\"0\"\u003d\"No Error\",\"1\"\u003d\"NTC Connect Error\",\"2\"\u003d\"High Temperature Alarm\",\"3\"\u003d\"EEPROM Error\",\"4\"\u003d\"Multi Errors\"]"
},
{
"property": "heat-level",
"siid": 2,
"piid": 3,
"friendlyName": "Heater - Heat Level",
"channel": "heat_level",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "1",
"label": "High"
},
{
"value": "2",
"label": "Low"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"readmeComment": "Value mapping [\"1\"\u003d\"High\",\"2\"\u003d\"Low\"]"
},
{
"property": "mode",
"siid": 2,
"piid": 4,
"friendlyName": "Heater - Mode",
"channel": "mode",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Fan not swing"
},
{
"value": "1",
"label": "Fan swing"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"readmeComment": "Value mapping [\"0\"\u003d\"Fan not swing\",\"1\"\u003d\"Fan swing\"]"
},
{
"property": "target-temperature",
"siid": 2,
"piid": 5,
"friendlyName": "Heater - Target Temperature",
"channel": "target_temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": 16,
"maximum": 30,
"step": 1,
"pattern": "%.1f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
]
},
{
"property": "temperature",
"siid": 9,
"piid": 7,
"friendlyName": "Environment - Temperature",
"channel": "temperature",
"type": "Number:Temperature",
"unit": "celsius",
"stateDescription": {
"minimum": -30,
"maximum": 100,
"pattern": "%.1f %unit%",
"readOnly": true
},
"refresh": true,
"actions": []
},
{
"property": "alarm",
"siid": 3,
"piid": 1,
"friendlyName": "Alarm - Alarm",
"channel": "alarm",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
],
"category": "alarm"
},
{
"property": "countdown-time",
"siid": 4,
"piid": 1,
"friendlyName": "Countdown - Countdown Time",
"channel": "countdown_time",
"type": "Number:Time",
"unit": "hours",
"stateDescription": {
"minimum": 0,
"maximum": 12,
"step": 1,
"pattern": "%.0f %unit%"
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "STRING"
}
]
},
{
"property": "brightness",
"siid": 6,
"piid": 1,
"friendlyName": "Indicator Light - Brightness",
"channel": "brightness",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Bright"
},
{
"value": "1",
"label": "Dark"
},
{
"value": "2",
"label": "Extinguished"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"category": "light",
"tags": [
"Control",
"Light"
],
"readmeComment": "Value mapping [\"0\"\u003d\"Bright\",\"1\"\u003d\"Dark\",\"2\"\u003d\"Extinguished\"]"
},
{
"property": "physical-controls-locked",
"siid": 7,
"piid": 1,
"friendlyName": "Physical Control Locked - Physical Control Locked",
"channel": "physical_controls_locked",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "return-to-middle",
"siid": 8,
"piid": 3,
"friendlyName": "Private Service - Return To Middle",
"channel": "return_to_middle",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
},
{
"property": "country-code",
"siid": 8,
"piid": 4,
"friendlyName": "Private Service - Country Code",
"channel": "country_code",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Unknown"
},
{
"value": "1",
"label": "US"
},
{
"value": "82",
"label": "KR"
},
{
"value": "44",
"label": "EU"
},
{
"value": "81",
"label": "JP"
},
{
"value": "7",
"label": "RU"
},
{
"value": "86",
"label": "CN"
},
{
"value": "852",
"label": "HK"
},
{
"value": "886",
"label": "TW"
},
{
"value": "33",
"label": "FR"
}
]
},
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "NUMBER"
}
],
"readmeComment": "Value mapping [\"0\"\u003d\"Unknown\",\"1\"\u003d\"US\",\"82\"\u003d\"KR\",\"44\"\u003d\"EU\",\"81\"\u003d\"JP\",\"7\"\u003d\"RU\",\"86\"\u003d\"CN\",\"852\"\u003d\"HK\",\"886\"\u003d\"TW\",\"33\"\u003d\"FR\"]"
},
{
"property": "hw-en",
"siid": 8,
"piid": 5,
"friendlyName": "Private Service - Hw En",
"channel": "hw_en",
"type": "Switch",
"refresh": true,
"actions": [
{
"command": "set_properties",
"parameterType": "ONOFFBOOL"
}
]
}
],
"experimental": true
}
}

View File

@ -10,7 +10,6 @@
"property": "power",
"friendlyName": "Power",
"channel": "power",
"channelType": "power",
"type": "Switch",
"refresh": true,
"actions": [
@ -69,7 +68,6 @@
"property": "buzzer",
"friendlyName": "Buzzer Status",
"channel": "buzzer",
"channelType": "buzzer",
"type": "Switch",
"refresh": true,
"actions": [
@ -96,7 +94,6 @@
"property": "child_lock",
"friendlyName": "Child Lock",
"channel": "childlock",
"channelType": "childlock",
"type": "Switch",
"refresh": true,
"actions": [
@ -141,7 +138,6 @@
"property": "use_time",
"friendlyName": "Run Time",
"channel": "usedhours",
"channelType": "usedhours",
"type": "Number:Time",
"unit": "hours",
"refresh": true,

View File

@ -12,10 +12,35 @@
"piid": 1,
"friendlyName": "Heater - Device Fault",
"channel": "fault",
"channelType": "miot_uint32",
"type": "Number",
"stateDescription": {
"readOnly": true,
"options": [
{
"value": "0",
"label": "No Error"
},
{
"value": "1",
"label": "NTC\tConnect Error"
},
{
"value": "2",
"label": "High Temperature Alarm"
},
{
"value": "3",
"label": "EEPROM Error"
},
{
"value": "4",
"label": "Multi Errors"
}
]
},
"refresh": true,
"actions": []
"actions": [],
"readmeComment": "Value mapping [\"0\"\u003d\"No Error\",\"1\"\u003d\"NTC\tConnect Error\",\"2\"\u003d\"High Temperature Alarm\",\"3\"\u003d\"EEPROM Error\",\"4\"\u003d\"Multi Errors\"]"
},
{
"property": "on",
@ -23,7 +48,6 @@
"piid": 2,
"friendlyName": "Heater - Power",
"channel": "on",
"channelType": "miot_bool",
"type": "Switch",
"refresh": true,
"actions": [
@ -43,9 +67,14 @@
"piid": 6,
"friendlyName": "Heater - Target Temperature",
"channel": "target-temperature",
"channelType": "ZhimiHeaterZa2_target-temperature",
"type": "Number:Temperature",
"unit": "CELCIUS",
"stateDescription": {
"minimum": 16,
"maximum": 28,
"step": 1,
"pattern": "%.1f %unit%"
},
"refresh": true,
"actions": [
{
@ -65,7 +94,6 @@
"piid": 1,
"friendlyName": "Alarm - Alarm",
"channel": "alarm",
"channelType": "miot_bool",
"type": "Switch",
"refresh": true,
"actions": [
@ -82,9 +110,14 @@
"piid": 1,
"friendlyName": "Countdown - Countdown Time",
"channel": "countdown-time",
"channelType": "time",
"type": "Number:Time",
"unit": "hours",
"stateDescription": {
"minimum": 0,
"maximum": 8,
"step": 1,
"pattern": "%.0f %unit%"
},
"refresh": true,
"actions": [
{
@ -101,6 +134,13 @@
"channel": "relative-humidity",
"type": "Number:Dimensionless",
"unit": "PERCENT",
"stateDescription": {
"minimum": 0,
"maximum": 100,
"step": 1,
"pattern": "%.0f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"tags": [
@ -117,6 +157,8 @@
"type": "Number:Temperature",
"unit": "CELCIUS",
"stateDescription": {
"minimum": -30,
"maximum": 100,
"pattern": "%.1f %unit%",
"readOnly": true
},
@ -134,7 +176,23 @@
"piid": 1,
"friendlyName": "Indicator Light - Brightness",
"channel": "brightness",
"type": "Dimmer",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Bright"
},
{
"value": "1",
"label": "Dark"
},
{
"value": "2",
"label": "Extinguished"
}
]
},
"refresh": true,
"actions": [
{
@ -146,7 +204,8 @@
"tags": [
"Control",
"Light"
]
],
"readmeComment": "Value mapping [\"0\"\u003d\"Bright\",\"1\"\u003d\"Dark\",\"2\"\u003d\"Extinguished\"]"
},
{
"property": "physical-controls-locked",
@ -154,7 +213,6 @@
"piid": 1,
"friendlyName": "Physical Control Locked - Physical Controls Locked",
"channel": "physical-controls-locked",
"channelType": "miot_bool",
"type": "Switch",
"refresh": true,
"actions": [
@ -170,9 +228,15 @@
"piid": 7,
"friendlyName": "Private-Service - Use Time",
"channel": "use-time",
"channelType": "time",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,
"maximum": -1,
"step": 1,
"pattern": "%.0f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"category": "time"

View File

@ -6,24 +6,12 @@
"propertyMethod": "get_properties",
"maxProperties": 1,
"channels": [
{
"property": "fault",
"siid": 2,
"piid": 1,
"friendlyName": "Heater - Device Fault",
"channel": "fault",
"channelType": "miot_uint32",
"type": "Number",
"refresh": true,
"actions": []
},
{
"property": "on",
"siid": 2,
"piid": 2,
"friendlyName": "Heater - Power",
"channel": "on",
"channelType": "miot_bool",
"type": "Switch",
"refresh": true,
"actions": [
@ -37,15 +25,56 @@
"Switch"
]
},
{
"property": "fault",
"siid": 2,
"piid": 1,
"friendlyName": "Heater - Device Fault",
"channel": "fault",
"type": "Number",
"stateDescription": {
"readOnly": true,
"options": [
{
"value": "0",
"label": "No Error"
},
{
"value": "1",
"label": "NTC\tConnect Error"
},
{
"value": "2",
"label": "High Temperature Alarm"
},
{
"value": "3",
"label": "EEPROM Error"
},
{
"value": "4",
"label": "Multi Errors"
}
]
},
"refresh": true,
"actions": [],
"readmeComment": "Value mapping [\"0\"\u003d\"No Error\",\"1\"\u003d\"NTC\tConnect Error\",\"2\"\u003d\"High Temperature Alarm\",\"3\"\u003d\"EEPROM Error\",\"4\"\u003d\"Multi Errors\"]"
},
{
"property": "target-temperature",
"siid": 2,
"piid": 6,
"friendlyName": "Heater - Target Temperature",
"channel": "target-temperature",
"channelType": "ZhimiHeaterZa2_target-temperature",
"type": "Number:Temperature",
"unit": "CELCIUS",
"unit": "celsius",
"stateDescription": {
"minimum": 16,
"maximum": 28,
"step": 1,
"pattern": "%.1f %unit%"
},
"refresh": true,
"actions": [
{
@ -65,7 +94,6 @@
"piid": 1,
"friendlyName": "Alarm - Alarm",
"channel": "alarm",
"channelType": "miot_bool",
"type": "Switch",
"refresh": true,
"actions": [
@ -82,9 +110,14 @@
"piid": 1,
"friendlyName": "Countdown - Countdown Time",
"channel": "countdown-time",
"channelType": "time",
"type": "Number:Time",
"unit": "hours",
"stateDescription": {
"minimum": 0,
"maximum": 8,
"step": 1,
"pattern": "%.0f %unit%"
},
"refresh": true,
"actions": [
{
@ -101,6 +134,13 @@
"channel": "relative-humidity",
"type": "Number:Dimensionless",
"unit": "PERCENT",
"stateDescription": {
"minimum": 0,
"maximum": 100,
"step": 1,
"pattern": "%.0f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"tags": [
@ -117,6 +157,8 @@
"type": "Number:Temperature",
"unit": "CELCIUS",
"stateDescription": {
"minimum": -30,
"maximum": 100,
"pattern": "%.1f %unit%",
"readOnly": true
},
@ -134,7 +176,23 @@
"piid": 1,
"friendlyName": "Indicator Light - Brightness",
"channel": "brightness",
"type": "Dimmer",
"type": "Number",
"stateDescription": {
"options": [
{
"value": "0",
"label": "Bright"
},
{
"value": "1",
"label": "Dark"
},
{
"value": "2",
"label": "Extinguished"
}
]
},
"refresh": true,
"actions": [
{
@ -146,7 +204,8 @@
"tags": [
"Control",
"Light"
]
],
"readmeComment": "Value mapping [\"0\"\u003d\"Bright\",\"1\"\u003d\"Dark\",\"2\"\u003d\"Extinguished\"]"
},
{
"property": "physical-controls-locked",
@ -154,7 +213,6 @@
"piid": 1,
"friendlyName": "Physical Control Locked - Physical Controls Locked",
"channel": "physical-controls-locked",
"channelType": "miot_bool",
"type": "Switch",
"refresh": true,
"actions": [
@ -170,12 +228,17 @@
"piid": 7,
"friendlyName": "Private-Service - Use Time",
"channel": "use-time",
"channelType": "time",
"type": "Number:Time",
"unit": "seconds",
"stateDescription": {
"minimum": 0,
"maximum": 2147483647,
"step": 1,
"pattern": "%.0f %unit%",
"readOnly": true
},
"refresh": true,
"actions": [],
"category": "time"
"actions": []
},
{
"property": "country-code",
@ -183,7 +246,6 @@
"piid": 8,
"friendlyName": "Private-Service - Country-Code",
"channel": "country-code",
"channelType": "ZhimiHeaterZb1_country-code",
"type": "Number",
"stateDescription": {
"readOnly": true,