mirror of
https://github.com/sususweet/midea-meiju-codec.git
synced 2025-09-27 18:22:41 +00:00
Compare commits
1 Commits
v0.0.3-alp
...
v0.0.4-alp
Author | SHA1 | Date | |
---|---|---|---|
![]() |
f99019bdca |
15
README.md
15
README.md
@@ -17,13 +17,28 @@
|
||||
## 目前支持的设备类型
|
||||
|
||||
- T0xAC 空调
|
||||
- T0xB3 消毒碗柜
|
||||
- T0xB8 智能扫地机器人
|
||||
- T0xCE 新风机
|
||||
- T0xCF 中央空调暖家
|
||||
- T0xD9 复式洗衣机
|
||||
- T0xDB 滚筒洗衣机
|
||||
- T0xDC 干衣机
|
||||
- T0xE1 洗碗机
|
||||
- T0xEA 电饭锅
|
||||
- T0xED 软水机
|
||||
- T0xFD 加湿器
|
||||
|
||||
欢迎合作开发添加更多设备支持。
|
||||
|
||||
合作开发方法:添加本插件后,找到未能正确识别的设备,点击对应设备`传感器`分类下的`连通性`:
|
||||
|
||||

|
||||
|
||||
展开下面的`属性`卡片,把里面这些字段复制给我或随issue提交,等待适配就可以了。
|
||||
|
||||

|
||||
|
||||
## 实体映射
|
||||
|
||||
映射文件位于`device_mapping`下, 每个大的品类一个映射文件,目前支持映射的实体类型如下:
|
||||
|
@@ -53,7 +53,8 @@ PLATFORMS: list[Platform] = [
|
||||
Platform.CLIMATE,
|
||||
Platform.SELECT,
|
||||
Platform.WATER_HEATER,
|
||||
Platform.FAN
|
||||
Platform.FAN,
|
||||
Platform.HUMIDIFIER
|
||||
]
|
||||
|
||||
|
||||
|
199
custom_components/midea_auto_cloud/device_mapping/T0xB3.py
Normal file
199
custom_components/midea_auto_cloud/device_mapping/T0xB3.py
Normal file
@@ -0,0 +1,199 @@
|
||||
from homeassistant.const import Platform, UnitOfTemperature, UnitOfTime
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": ["off", "on"],
|
||||
"queries": [{}],
|
||||
"centralized": [
|
||||
"upstair_work_status", "downstair_work_status", "middlestair_work_status",
|
||||
"upstair_mode", "downstair_mode", "middlestair_mode",
|
||||
"upstair_temp", "downstair_temp", "middlestair_temp"
|
||||
],
|
||||
"entities": {
|
||||
Platform.BINARY_SENSOR: {
|
||||
"door_middlestair": {
|
||||
"device_class": BinarySensorDeviceClass.DOOR,
|
||||
},
|
||||
"door_upstair": {
|
||||
"device_class": BinarySensorDeviceClass.DOOR,
|
||||
},
|
||||
"door_downstair": {
|
||||
"device_class": BinarySensorDeviceClass.DOOR,
|
||||
},
|
||||
"downstair_ispreheat": {
|
||||
"device_class": BinarySensorDeviceClass.RUNNING,
|
||||
},
|
||||
"upstair_ispreheat": {
|
||||
"device_class": BinarySensorDeviceClass.RUNNING,
|
||||
},
|
||||
"downstair_iscooling": {
|
||||
"device_class": BinarySensorDeviceClass.RUNNING,
|
||||
},
|
||||
"upstair_iscooling": {
|
||||
"device_class": BinarySensorDeviceClass.RUNNING,
|
||||
},
|
||||
"middlestair_ispreheat": {
|
||||
"device_class": BinarySensorDeviceClass.RUNNING,
|
||||
},
|
||||
"middlestair_iscooling": {
|
||||
"device_class": BinarySensorDeviceClass.RUNNING,
|
||||
},
|
||||
"lock": {
|
||||
"device_class": BinarySensorDeviceClass.LOCK,
|
||||
},
|
||||
"is_error": {
|
||||
"device_class": BinarySensorDeviceClass.PROBLEM,
|
||||
},
|
||||
"uv_disinfect": {
|
||||
"device_class": BinarySensorDeviceClass.RUNNING,
|
||||
}
|
||||
},
|
||||
Platform.SELECT: {
|
||||
"upstair_work_status": {
|
||||
"options": {
|
||||
"power_off": {"upstair_work_status": "power_off"},
|
||||
"power_on": {"upstair_work_status": "power_on"},
|
||||
"working": {"upstair_work_status": "working"},
|
||||
"pause": {"upstair_work_status": "pause"},
|
||||
"finish": {"upstair_work_status": "finish"},
|
||||
"error": {"upstair_work_status": "error"}
|
||||
}
|
||||
},
|
||||
"downstair_work_status": {
|
||||
"options": {
|
||||
"power_off": {"downstair_work_status": "power_off"},
|
||||
"power_on": {"downstair_work_status": "power_on"},
|
||||
"working": {"downstair_work_status": "working"},
|
||||
"pause": {"downstair_work_status": "pause"},
|
||||
"finish": {"downstair_work_status": "finish"},
|
||||
"error": {"downstair_work_status": "error"}
|
||||
}
|
||||
},
|
||||
"middlestair_work_status": {
|
||||
"options": {
|
||||
"power_off": {"middlestair_work_status": "power_off"},
|
||||
"power_on": {"middlestair_work_status": "power_on"},
|
||||
"working": {"middlestair_work_status": "working"},
|
||||
"pause": {"middlestair_work_status": "pause"},
|
||||
"finish": {"middlestair_work_status": "finish"},
|
||||
"error": {"middlestair_work_status": "error"}
|
||||
}
|
||||
},
|
||||
"upstair_mode": {
|
||||
"options": {
|
||||
"off": {"upstair_mode": "0"},
|
||||
"bake": {"upstair_mode": "1"},
|
||||
"roast": {"upstair_mode": "2"},
|
||||
"grill": {"upstair_mode": "3"},
|
||||
"convection": {"upstair_mode": "4"},
|
||||
"defrost": {"upstair_mode": "5"}
|
||||
}
|
||||
},
|
||||
"downstair_mode": {
|
||||
"options": {
|
||||
"off": {"downstair_mode": "0"},
|
||||
"bake": {"downstair_mode": "1"},
|
||||
"roast": {"downstair_mode": "2"},
|
||||
"grill": {"downstair_mode": "3"},
|
||||
"convection": {"downstair_mode": "4"},
|
||||
"defrost": {"downstair_mode": "5"}
|
||||
}
|
||||
},
|
||||
"middlestair_mode": {
|
||||
"options": {
|
||||
"off": {"middlestair_mode": "0"},
|
||||
"bake": {"middlestair_mode": "1"},
|
||||
"roast": {"middlestair_mode": "2"},
|
||||
"grill": {"middlestair_mode": "3"},
|
||||
"convection": {"middlestair_mode": "4"},
|
||||
"defrost": {"middlestair_mode": "5"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"upstair_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"downstair_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"middlestair_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"upstair_hour": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"upstair_min": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"upstair_sec": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.SECONDS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"middlestair_hour": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"middlestair_min": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"middlestair_sec": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.SECONDS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"downstair_hour": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"downstair_min": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"downstair_sec": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.SECONDS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"order_hour": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"order_min": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"order_sec": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.SECONDS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"version": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
187
custom_components/midea_auto_cloud/device_mapping/T0xCE.py
Normal file
187
custom_components/midea_auto_cloud/device_mapping/T0xCE.py
Normal file
@@ -0,0 +1,187 @@
|
||||
from homeassistant.const import Platform, UnitOfTemperature, UnitOfTime
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": ["off", "on"],
|
||||
"queries": [{}],
|
||||
"centralized": [
|
||||
"power", "mode_state", "fan_set", "room_temp_value", "humidity_set"
|
||||
],
|
||||
"entities": {
|
||||
Platform.SWITCH: {
|
||||
"lock_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"esp_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"passby_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"preheat_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"remain_able": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"hcho_check_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"co2_check_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"function_set_link": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"function_set_sleep": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"function_set_energy_save": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"function_set_prheat": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"function_set_ultimate": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"clean_net_clean_flg": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"change_net_change_flg": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"condensation_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"humidity_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"preheat_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"esp_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"pm25_check_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"timer_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"power": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"freeze_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"humidity_check_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
}
|
||||
},
|
||||
Platform.SELECT: {
|
||||
"mode_state": {
|
||||
"options": {
|
||||
"passby": {"mode_state": "passby"},
|
||||
"auto": {"mode_state": "auto"},
|
||||
"manual": {"mode_state": "manual"},
|
||||
"sleep": {"mode_state": "sleep"},
|
||||
"energy_save": {"mode_state": "energy_save"},
|
||||
"ultimate": {"mode_state": "ultimate"}
|
||||
}
|
||||
},
|
||||
"fan_set": {
|
||||
"options": {
|
||||
"off": {"fan_set": "0"},
|
||||
"low": {"fan_set": "1"},
|
||||
"medium": {"fan_set": "2"},
|
||||
"high": {"fan_set": "3"},
|
||||
"auto": {"fan_set": "4"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"room_temp_value": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"clean_net_used_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"change_net_used_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"tvoc_value": {
|
||||
"device_class": SensorDeviceClass.VOLATILE_ORGANIC_COMPOUNDS,
|
||||
"unit_of_measurement": "mg/m³",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"change_set_real_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"clean_set_real_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"error_code": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"humidity_set": {
|
||||
"device_class": SensorDeviceClass.HUMIDITY,
|
||||
"unit_of_measurement": "%",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"room_aqi_value": {
|
||||
"device_class": SensorDeviceClass.AQI,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"change_net_set_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"clean_net_set_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.HOURS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"humidity_value": {
|
||||
"device_class": SensorDeviceClass.HUMIDITY,
|
||||
"unit_of_measurement": "%",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"hcho_value": {
|
||||
"device_class": SensorDeviceClass.VOLATILE_ORGANIC_COMPOUNDS,
|
||||
"unit_of_measurement": "mg/m³",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"pm25_value": {
|
||||
"device_class": SensorDeviceClass.PM25,
|
||||
"unit_of_measurement": "µg/m³",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"co2_value": {
|
||||
"device_class": SensorDeviceClass.CO2,
|
||||
"unit_of_measurement": "ppm",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"machine_type": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
168
custom_components/midea_auto_cloud/device_mapping/T0xCF.py
Normal file
168
custom_components/midea_auto_cloud/device_mapping/T0xCF.py
Normal file
@@ -0,0 +1,168 @@
|
||||
from homeassistant.const import Platform, UnitOfTemperature, PRECISION_HALVES
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": ["off", "on"],
|
||||
"queries": [{}],
|
||||
"centralized": [
|
||||
"power_state", "run_mode", "temp_set", "heat_enable", "cool_enable"
|
||||
],
|
||||
"entities": {
|
||||
Platform.CLIMATE: {
|
||||
"thermostat": {
|
||||
"power": "power_state",
|
||||
"hvac_modes": {
|
||||
"off": {"power_state": "off"},
|
||||
"heat": {"power_state": "on", "run_mode": "heat", "heat_enable": "on"},
|
||||
"cool": {"power_state": "on", "run_mode": "cool", "cool_enable": "on"},
|
||||
"auto": {"power_state": "on", "run_mode": "auto", "heat_enable": "on", "cool_enable": "on"}
|
||||
},
|
||||
"target_temperature": "temp_set",
|
||||
"current_temperature": "cur_temp",
|
||||
"min_temp": 5,
|
||||
"max_temp": 70,
|
||||
"temperature_unit": UnitOfTemperature.CELSIUS,
|
||||
"precision": PRECISION_HALVES,
|
||||
}
|
||||
},
|
||||
Platform.SWITCH: {
|
||||
"freeze_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"power_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"heat_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"cool_enable": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"silence_set_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"time_set_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"silence_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"holiday_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"holiday_set_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"holiday_on_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"room_temp_ctrl": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"room_temp_set": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"comp_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"day_time_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"week_time_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"warn_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"defrost_state": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"pre_heat": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
}
|
||||
},
|
||||
Platform.SELECT: {
|
||||
"run_mode": {
|
||||
"options": {
|
||||
"heat": {"run_mode": "heat"},
|
||||
"cool": {"run_mode": "cool"},
|
||||
"auto": {"run_mode": "auto"},
|
||||
"fan": {"run_mode": "fan"},
|
||||
"dry": {"run_mode": "dry"}
|
||||
}
|
||||
},
|
||||
"temp_type": {
|
||||
"options": {
|
||||
"water_temperature": {"temp_type": "water_temperature"},
|
||||
"room_temperature": {"temp_type": "room_temperature"},
|
||||
"outdoor_temperature": {"temp_type": "outdoor_temperature"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"cur_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"error_code": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"heat_max_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"heat_min_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cool_max_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cool_min_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"auto_max_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"auto_min_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"preheat_on_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"preheat_max_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"preheat_min_set_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"temp_set": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
186
custom_components/midea_auto_cloud/device_mapping/T0xD9.py
Normal file
186
custom_components/midea_auto_cloud/device_mapping/T0xD9.py
Normal file
@@ -0,0 +1,186 @@
|
||||
from homeassistant.const import Platform, UnitOfElectricPotential, UnitOfTemperature, UnitOfTime
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": [0, 1],
|
||||
"calculate": {
|
||||
"get": [
|
||||
{
|
||||
"lvalue": "[remaining_time]",
|
||||
"rvalue": "[db_remain_time]"
|
||||
}
|
||||
],
|
||||
"set": {
|
||||
}
|
||||
},
|
||||
"entities": {
|
||||
Platform.SWITCH: {
|
||||
"db_power": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_clean_notification": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_softener_needed": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_detergent_needed": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_nightly_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_baby_lock": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_light": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_steam_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_fast_clean_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"db_wash_dry_link": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
}
|
||||
},
|
||||
Platform.SELECT: {
|
||||
"db_running_status": {
|
||||
"options": {
|
||||
"stop": {"db_running_status": "stop"},
|
||||
"start": {"db_running_status": "start"},
|
||||
"pause": {"db_running_status": "pause"},
|
||||
"finish": {"db_running_status": "finish"},
|
||||
"error": {"db_running_status": "error"}
|
||||
}
|
||||
},
|
||||
"db_program": {
|
||||
"options": {
|
||||
"fast_wash_30": {"db_program": "fast_wash_30"},
|
||||
"normal_wash": {"db_program": "normal_wash"},
|
||||
"heavy_wash": {"db_program": "heavy_wash"},
|
||||
"delicate_wash": {"db_program": "delicate_wash"},
|
||||
"quick_wash": {"db_program": "quick_wash"},
|
||||
"eco_wash": {"db_program": "eco_wash"}
|
||||
}
|
||||
},
|
||||
"db_water_level": {
|
||||
"options": {
|
||||
"low": {"db_water_level": "1"},
|
||||
"medium": {"db_water_level": "2"},
|
||||
"high": {"db_water_level": "3"},
|
||||
"extra_high": {"db_water_level": "4"}
|
||||
}
|
||||
},
|
||||
"db_temperature": {
|
||||
"options": {
|
||||
"cold": {"db_temperature": "1"},
|
||||
"warm": {"db_temperature": "2"},
|
||||
"hot": {"db_temperature": "3"},
|
||||
"extra_hot": {"db_temperature": "4"}
|
||||
}
|
||||
},
|
||||
"dehydration_speed": {
|
||||
"options": {
|
||||
"low": {"dehydration_speed": "1"},
|
||||
"medium": {"dehydration_speed": "2"},
|
||||
"high": {"dehydration_speed": "3"},
|
||||
"extra_high": {"dehydration_speed": "4"}
|
||||
}
|
||||
},
|
||||
"db_detergent": {
|
||||
"options": {
|
||||
"none": {"db_detergent": "1"},
|
||||
"little": {"db_detergent": "2"},
|
||||
"normal": {"db_detergent": "3"},
|
||||
"more": {"db_detergent": "4"}
|
||||
}
|
||||
},
|
||||
"db_softener": {
|
||||
"options": {
|
||||
"none": {"db_softener": "1"},
|
||||
"little": {"db_softener": "2"},
|
||||
"normal": {"db_softener": "3"},
|
||||
"more": {"db_softener": "4"}
|
||||
}
|
||||
},
|
||||
"db_position": {
|
||||
"options": {
|
||||
"position_1": {"db_position": "1"},
|
||||
"position_2": {"db_position": "2"},
|
||||
"position_3": {"db_position": "3"}
|
||||
}
|
||||
},
|
||||
"db_location": {
|
||||
"options": {
|
||||
"location_1": {"db_location": "1"},
|
||||
"location_2": {"db_location": "2"},
|
||||
"location_3": {"db_location": "3"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"db_remain_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_progress": {
|
||||
"device_class": SensorDeviceClass.BATTERY,
|
||||
"unit_of_measurement": "%",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_error_code": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_set_dewater_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_set_wash_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_device_software_version": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_rinse_count": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_wash_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_appointment_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_appointment": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_dehydration_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"db_cycle_memory": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
399
custom_components/midea_auto_cloud/device_mapping/T0xDB.py
Normal file
399
custom_components/midea_auto_cloud/device_mapping/T0xDB.py
Normal file
@@ -0,0 +1,399 @@
|
||||
from homeassistant.const import Platform, UnitOfElectricPotential, UnitOfTemperature, UnitOfTime
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": [0, 1],
|
||||
"calculate": {
|
||||
"get": [
|
||||
{
|
||||
"lvalue": "[remaining_time]",
|
||||
"rvalue": "[remain_time]"
|
||||
}
|
||||
],
|
||||
"set": {
|
||||
}
|
||||
},
|
||||
"entities": {
|
||||
Platform.SWITCH: {
|
||||
"power": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"softener_lack": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"detergent_lack": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"door_opened": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"bucket_water_overheating": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"memory": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"appointment": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"spray_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"old_speedy": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"nightly": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"down_light": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"easy_ironing": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"super_clean_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"intelligent_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"strong_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"silent": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"speedy": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"lock": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"flocks_switcher": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"fresh_anion_switch": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"dry_weighing_already": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"keep_fresh_status": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"drying_tunnel_overheating": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"fast_clean_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"steam_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"beforehand_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"ai_flag": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"water_plus": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"soak": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"ultraviolet_lamp": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"eye_wash": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"microbubble": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"wind_dispel": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"cycle_memory": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
}
|
||||
},
|
||||
Platform.SELECT: {
|
||||
"running_status": {
|
||||
"options": {
|
||||
"standby": {"running_status": "standby"},
|
||||
"running": {"running_status": "running"},
|
||||
"pause": {"running_status": "pause"},
|
||||
"finish": {"running_status": "finish"},
|
||||
"error": {"running_status": "error"}
|
||||
}
|
||||
},
|
||||
"db_dehydration_speed": {
|
||||
"options": {
|
||||
"low": {"db_dehydration_speed": "1"},
|
||||
"medium": {"db_dehydration_speed": "2"},
|
||||
"high": {"db_dehydration_speed": "3"},
|
||||
"extra_high": {"db_dehydration_speed": "4"}
|
||||
}
|
||||
},
|
||||
"mode": {
|
||||
"options": {
|
||||
"normal": {"mode": "normal"},
|
||||
"eco": {"mode": "eco"},
|
||||
"quick": {"mode": "quick"},
|
||||
"heavy": {"mode": "heavy"},
|
||||
"delicate": {"mode": "delicate"}
|
||||
}
|
||||
},
|
||||
"water_level": {
|
||||
"options": {
|
||||
"low": {"water_level": "low"},
|
||||
"medium": {"water_level": "medium"},
|
||||
"high": {"water_level": "high"},
|
||||
"extra_high": {"water_level": "extra_high"}
|
||||
}
|
||||
},
|
||||
"program": {
|
||||
"options": {
|
||||
"ssp": {"program": "ssp"},
|
||||
"cotton": {"program": "cotton"},
|
||||
"synthetic": {"program": "synthetic"},
|
||||
"wool": {"program": "wool"},
|
||||
"delicate": {"program": "delicate"},
|
||||
"quick": {"program": "quick"}
|
||||
}
|
||||
},
|
||||
"temperature": {
|
||||
"options": {
|
||||
"cold": {"temperature": "cold"},
|
||||
"warm": {"temperature": "warm"},
|
||||
"hot": {"temperature": "hot"},
|
||||
"extra_hot": {"temperature": "extra_hot"}
|
||||
}
|
||||
},
|
||||
"detergent_density": {
|
||||
"options": {
|
||||
"low": {"detergent_density": "low"},
|
||||
"medium": {"detergent_density": "medium"},
|
||||
"high": {"detergent_density": "high"},
|
||||
"extra_high": {"detergent_density": "extra_high"}
|
||||
}
|
||||
},
|
||||
"softener_density": {
|
||||
"options": {
|
||||
"low": {"softener_density": "low"},
|
||||
"medium": {"softener_density": "medium"},
|
||||
"high": {"softener_density": "high"},
|
||||
"extra_high": {"softener_density": "extra_high"}
|
||||
}
|
||||
},
|
||||
"detergent": {
|
||||
"options": {
|
||||
"none": {"detergent": "none"},
|
||||
"little": {"detergent": "little"},
|
||||
"normal": {"detergent": "normal"},
|
||||
"more": {"detergent": "more"}
|
||||
}
|
||||
},
|
||||
"softener": {
|
||||
"options": {
|
||||
"none": {"softener": "none"},
|
||||
"little": {"softener": "little"},
|
||||
"normal": {"softener": "normal"},
|
||||
"more": {"softener": "more"}
|
||||
}
|
||||
},
|
||||
"season": {
|
||||
"options": {
|
||||
"spring": {"season": "spring"},
|
||||
"summer": {"season": "summer"},
|
||||
"autumn": {"season": "autumn"},
|
||||
"winter": {"season": "winter"}
|
||||
}
|
||||
},
|
||||
"disinfectant": {
|
||||
"options": {
|
||||
"none": {"disinfectant": "none"},
|
||||
"light": {"disinfectant": "light"},
|
||||
"medium": {"disinfectant": "medium"},
|
||||
"strong": {"disinfectant": "strong"}
|
||||
}
|
||||
},
|
||||
"dirty_degree": {
|
||||
"options": {
|
||||
"light": {"dirty_degree": "light"},
|
||||
"medium": {"dirty_degree": "medium"},
|
||||
"heavy": {"dirty_degree": "heavy"},
|
||||
"extra_heavy": {"dirty_degree": "extra_heavy"}
|
||||
}
|
||||
},
|
||||
"stains": {
|
||||
"options": {
|
||||
"none": {"stains": "none"},
|
||||
"light": {"stains": "light"},
|
||||
"medium": {"stains": "medium"},
|
||||
"heavy": {"stains": "heavy"}
|
||||
}
|
||||
},
|
||||
"add_rinse": {
|
||||
"options": {
|
||||
"none": {"add_rinse": "none"},
|
||||
"one": {"add_rinse": "one"},
|
||||
"two": {"add_rinse": "two"},
|
||||
"three": {"add_rinse": "three"}
|
||||
}
|
||||
},
|
||||
"soak_count": {
|
||||
"options": {
|
||||
"none": {"soak_count": "none"},
|
||||
"one": {"soak_count": "one"},
|
||||
"two": {"soak_count": "two"},
|
||||
"three": {"soak_count": "three"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"wash_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"appointment_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"remain_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"dryer": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"remote_control_flag": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"progress": {
|
||||
"device_class": SensorDeviceClass.BATTERY,
|
||||
"unit_of_measurement": "%",
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_low": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_high": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai1": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai2": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai3": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai4": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai_time1": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"dehydration_time_value": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai_time3": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai_time4": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"customize_machine_cycle": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"detergent_global": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"softener_global": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"detergent_density_global": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"softener_density_global": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"fresh_air_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"flocks_remind_period": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"device_software_version": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"expert_step": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"error_code": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"flocks_wash_count": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"active_oxygen": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"dehydration_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cloud_cycle_jiepai_time2": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"wash_time_value": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
153
custom_components/midea_auto_cloud/device_mapping/T0xDC.py
Normal file
153
custom_components/midea_auto_cloud/device_mapping/T0xDC.py
Normal file
@@ -0,0 +1,153 @@
|
||||
from homeassistant.const import Platform, UnitOfTime
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": ["off", "on"],
|
||||
"queries": [{}],
|
||||
"centralized": [
|
||||
"power", "ai_switch", "light", "appointment", "prevent_wrinkle_switch",
|
||||
"steam_switch", "damp_dry_signal", "eco_dry_switch", "bucket_clean_switch",
|
||||
"water_box", "baby_lock", "remind_sound", "steam", "prevent_wrinkle",
|
||||
"material", "sterilize", "dryness_level", "dry_temp", "intensity", "program"
|
||||
],
|
||||
"entities": {
|
||||
Platform.SWITCH: {
|
||||
"ai_switch": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"light": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"appointment": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"prevent_wrinkle_switch": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"steam_switch": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"damp_dry_signal": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"eco_dry_switch": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"bucket_clean_switch": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"water_box": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"baby_lock": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"remind_sound": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"steam": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"power": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
}
|
||||
},
|
||||
Platform.BINARY_SENSOR: {
|
||||
"door_warn": {
|
||||
"device_class": BinarySensorDeviceClass.PROBLEM,
|
||||
}
|
||||
},
|
||||
Platform.SELECT: {
|
||||
"prevent_wrinkle": {
|
||||
"options": {
|
||||
"off": {"prevent_wrinkle": "0"},
|
||||
"low": {"prevent_wrinkle": "1"},
|
||||
"medium": {"prevent_wrinkle": "2"},
|
||||
"high": {"prevent_wrinkle": "3"}
|
||||
}
|
||||
},
|
||||
"material": {
|
||||
"options": {
|
||||
"cotton": {"material": "0"},
|
||||
"synthetic": {"material": "1"},
|
||||
"wool": {"material": "2"},
|
||||
"delicate": {"material": "3"},
|
||||
"mixed": {"material": "4"}
|
||||
}
|
||||
},
|
||||
"sterilize": {
|
||||
"options": {
|
||||
"off": {"sterilize": "0"},
|
||||
"on": {"sterilize": "1"}
|
||||
}
|
||||
},
|
||||
"dryness_level": {
|
||||
"options": {
|
||||
"extra_dry": {"dryness_level": "0"},
|
||||
"dry": {"dryness_level": "1"},
|
||||
"normal": {"dryness_level": "2"},
|
||||
"damp": {"dryness_level": "3"}
|
||||
}
|
||||
},
|
||||
"dry_temp": {
|
||||
"options": {
|
||||
"low": {"dry_temp": "0"},
|
||||
"medium": {"dry_temp": "1"},
|
||||
"high": {"dry_temp": "2"},
|
||||
"extra_high": {"dry_temp": "3"}
|
||||
}
|
||||
},
|
||||
"intensity": {
|
||||
"options": {
|
||||
"low": {"intensity": "0"},
|
||||
"medium": {"intensity": "1"},
|
||||
"high": {"intensity": "2"}
|
||||
}
|
||||
},
|
||||
"program": {
|
||||
"options": {
|
||||
"mixed_wash": {"program": "mixed_wash"},
|
||||
"cotton": {"program": "cotton"},
|
||||
"synthetic": {"program": "synthetic"},
|
||||
"wool": {"program": "wool"},
|
||||
"delicate": {"program": "delicate"},
|
||||
"quick": {"program": "quick"},
|
||||
"eco": {"program": "eco"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"appointment_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"remain_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"progress": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"version": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"error_code": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"dry_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
158
custom_components/midea_auto_cloud/device_mapping/T0xFD.py
Normal file
158
custom_components/midea_auto_cloud/device_mapping/T0xFD.py
Normal file
@@ -0,0 +1,158 @@
|
||||
from homeassistant.const import Platform, UnitOfTemperature, UnitOfTime, PERCENTAGE
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.binary_sensor import BinarySensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
from homeassistant.components.humidifier import HumidifierDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": ["off", "on"],
|
||||
"queries": [{}],
|
||||
"centralized": [
|
||||
"power", "disinfect_on_off", "netions_on_off", "airdry_on_off",
|
||||
"wind_gear", "wind_speed", "light_color", "bright_led",
|
||||
"humidity_mode", "tank_status", "humidity", "cur_humidity"
|
||||
],
|
||||
"entities": {
|
||||
Platform.SWITCH: {
|
||||
"disinfect_on_off": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"netions_on_off": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"airdry_on_off": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"power": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"buzzer": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"power_on_timer": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"power_off_timer": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
},
|
||||
"display_on_off": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
}
|
||||
},
|
||||
Platform.BINARY_SENSOR: {
|
||||
"add_water_flag": {
|
||||
"device_class": BinarySensorDeviceClass.PROBLEM,
|
||||
}
|
||||
},
|
||||
Platform.HUMIDIFIER: {
|
||||
"humidifier": {
|
||||
"device_class": HumidifierDeviceClass.HUMIDIFIER,
|
||||
"power": "power",
|
||||
"target_humidity": "humidity",
|
||||
"current_humidity": "cur_humidity",
|
||||
"min_humidity": 30,
|
||||
"max_humidity": 80,
|
||||
"mode": "humidity_mode",
|
||||
"modes": {
|
||||
"manual": {"humidity_mode": "manual"},
|
||||
"auto": {"humidity_mode": "auto"},
|
||||
"sleep": {"humidity_mode": "sleep"},
|
||||
"baby": {"humidity_mode": "baby"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SELECT: {
|
||||
"wind_gear": {
|
||||
"options": {
|
||||
"low": {"wind_gear": "low"},
|
||||
"medium": {"wind_gear": "medium"},
|
||||
"high": {"wind_gear": "high"},
|
||||
"auto": {"wind_gear": "auto"},
|
||||
"invalid": {"wind_gear": "invalid"}
|
||||
}
|
||||
},
|
||||
"wind_speed": {
|
||||
"options": {
|
||||
"low": {"wind_speed": "low"},
|
||||
"medium": {"wind_speed": "medium"},
|
||||
"high": {"wind_speed": "high"},
|
||||
"auto": {"wind_speed": "auto"}
|
||||
}
|
||||
},
|
||||
"light_color": {
|
||||
"options": {
|
||||
"warm": {"light_color": "warm"},
|
||||
"cool": {"light_color": "cool"},
|
||||
"white": {"light_color": "white"},
|
||||
"blue": {"light_color": "blue"},
|
||||
"green": {"light_color": "green"},
|
||||
"red": {"light_color": "red"},
|
||||
"off": {"light_color": "off"}
|
||||
}
|
||||
},
|
||||
"bright_led": {
|
||||
"options": {
|
||||
"light": {"bright_led": "light"},
|
||||
"dim": {"bright_led": "dim"},
|
||||
"off": {"bright_led": "off"}
|
||||
}
|
||||
},
|
||||
"tank_status": {
|
||||
"options": {
|
||||
"normal": {"tank_status": "0"},
|
||||
"low": {"tank_status": "1"},
|
||||
"empty": {"tank_status": "2"},
|
||||
"error": {"tank_status": "3"}
|
||||
}
|
||||
}
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"running_percent": {
|
||||
"device_class": SensorDeviceClass.POWER_FACTOR,
|
||||
"unit_of_measurement": PERCENTAGE,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"error_code": {
|
||||
"device_class": SensorDeviceClass.ENUM,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"cur_temperature": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"sensor_battery": {
|
||||
"device_class": SensorDeviceClass.BATTERY,
|
||||
"unit_of_measurement": PERCENTAGE,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"sensor_humidify": {
|
||||
"device_class": SensorDeviceClass.HUMIDITY,
|
||||
"unit_of_measurement": PERCENTAGE,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"sensor_temperature": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"air_dry_left_time": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"time_on": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
},
|
||||
"time_off": {
|
||||
"device_class": SensorDeviceClass.DURATION,
|
||||
"unit_of_measurement": UnitOfTime.MINUTES,
|
||||
"state_class": SensorStateClass.MEASUREMENT
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
151
custom_components/midea_auto_cloud/humidifier.py
Normal file
151
custom_components/midea_auto_cloud/humidifier.py
Normal file
@@ -0,0 +1,151 @@
|
||||
from homeassistant.components.humidifier import (
|
||||
HumidifierEntity,
|
||||
HumidifierDeviceClass
|
||||
)
|
||||
from homeassistant.const import Platform
|
||||
from homeassistant.config_entries import ConfigEntry
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||
|
||||
from .const import DOMAIN
|
||||
from .midea_entity import MideaEntity
|
||||
from . import load_device_config
|
||||
|
||||
|
||||
async def async_setup_entry(
|
||||
hass: HomeAssistant,
|
||||
config_entry: ConfigEntry,
|
||||
async_add_entities: AddEntitiesCallback,
|
||||
) -> None:
|
||||
"""Set up humidifier entities for Midea devices."""
|
||||
account_bucket = hass.data.get(DOMAIN, {}).get("accounts", {}).get(config_entry.entry_id)
|
||||
if not account_bucket:
|
||||
async_add_entities([])
|
||||
return
|
||||
device_list = account_bucket.get("device_list", {})
|
||||
coordinator_map = account_bucket.get("coordinator_map", {})
|
||||
|
||||
devs = []
|
||||
for device_id, info in device_list.items():
|
||||
device_type = info.get("type")
|
||||
sn8 = info.get("sn8")
|
||||
config = await load_device_config(hass, device_type, sn8) or {}
|
||||
entities_cfg = (config.get("entities") or {}).get(Platform.HUMIDIFIER, {})
|
||||
manufacturer = config.get("manufacturer")
|
||||
rationale = config.get("rationale")
|
||||
coordinator = coordinator_map.get(device_id)
|
||||
device = coordinator.device if coordinator else None
|
||||
|
||||
for entity_key, ecfg in entities_cfg.items():
|
||||
devs.append(MideaHumidifierEntity(
|
||||
coordinator, device, manufacturer, rationale, entity_key, ecfg
|
||||
))
|
||||
async_add_entities(devs)
|
||||
|
||||
|
||||
class MideaHumidifierEntity(MideaEntity, HumidifierEntity):
|
||||
"""Generic humidifier entity."""
|
||||
|
||||
def __init__(self, coordinator, device, manufacturer, rationale, entity_key, config):
|
||||
super().__init__(
|
||||
coordinator,
|
||||
device.device_id,
|
||||
device.device_name,
|
||||
f"T0x{device.device_type:02X}",
|
||||
device.sn,
|
||||
device.sn8,
|
||||
device.model,
|
||||
entity_key,
|
||||
device=device,
|
||||
manufacturer=manufacturer,
|
||||
rationale=rationale,
|
||||
config=config,
|
||||
)
|
||||
self._device = device
|
||||
self._manufacturer = manufacturer
|
||||
self._rationale = rationale
|
||||
self._entity_key = entity_key
|
||||
self._config = config
|
||||
|
||||
@property
|
||||
def device_class(self):
|
||||
"""Return the device class."""
|
||||
return self._config.get("device_class", HumidifierDeviceClass.HUMIDIFIER)
|
||||
|
||||
@property
|
||||
def is_on(self):
|
||||
"""Return if the humidifier is on."""
|
||||
power_key = self._config.get("power")
|
||||
if power_key:
|
||||
value = self.device_attributes.get(power_key)
|
||||
if isinstance(value, bool):
|
||||
return value
|
||||
return value == 1 or value == "on" or value == "true"
|
||||
return False
|
||||
|
||||
@property
|
||||
def target_humidity(self):
|
||||
"""Return the target humidity."""
|
||||
target_humidity_key = self._config.get("target_humidity")
|
||||
if target_humidity_key:
|
||||
return self.device_attributes.get(target_humidity_key, 0)
|
||||
return 0
|
||||
|
||||
@property
|
||||
def current_humidity(self):
|
||||
"""Return the current humidity."""
|
||||
current_humidity_key = self._config.get("current_humidity")
|
||||
if current_humidity_key:
|
||||
return self.device_attributes.get(current_humidity_key, 0)
|
||||
return 0
|
||||
|
||||
@property
|
||||
def min_humidity(self):
|
||||
"""Return the minimum humidity."""
|
||||
return self._config.get("min_humidity", 30)
|
||||
|
||||
@property
|
||||
def max_humidity(self):
|
||||
"""Return the maximum humidity."""
|
||||
return self._config.get("max_humidity", 80)
|
||||
|
||||
@property
|
||||
def mode(self):
|
||||
"""Return the current mode."""
|
||||
mode_key = self._config.get("mode")
|
||||
if mode_key:
|
||||
return self.device_attributes.get(mode_key, "manual")
|
||||
return "manual"
|
||||
|
||||
@property
|
||||
def available_modes(self):
|
||||
"""Return the available modes."""
|
||||
modes = self._config.get("modes", {})
|
||||
return list(modes.keys())
|
||||
|
||||
async def async_turn_on(self, **kwargs):
|
||||
"""Turn the humidifier on."""
|
||||
power_key = self._config.get("power")
|
||||
if power_key:
|
||||
await self._device.set_attribute(power_key, True)
|
||||
|
||||
async def async_turn_off(self, **kwargs):
|
||||
"""Turn the humidifier off."""
|
||||
power_key = self._config.get("power")
|
||||
if power_key:
|
||||
await self._device.set_attribute(power_key, False)
|
||||
|
||||
async def async_set_humidity(self, humidity: int):
|
||||
"""Set the target humidity."""
|
||||
target_humidity_key = self._config.get("target_humidity")
|
||||
if target_humidity_key:
|
||||
await self._device.set_attribute(target_humidity_key, humidity)
|
||||
|
||||
async def async_set_mode(self, mode: str):
|
||||
"""Set the mode."""
|
||||
mode_key = self._config.get("mode")
|
||||
modes = self._config.get("modes", {})
|
||||
if mode_key and mode in modes:
|
||||
mode_config = modes[mode]
|
||||
for attr_key, attr_value in mode_config.items():
|
||||
await self._device.set_attribute(attr_key, attr_value)
|
@@ -7,5 +7,5 @@
|
||||
"iot_class": "cloud_push",
|
||||
"issue_tracker": "https://github.com/sususweet/midea-meiju-codec/issues",
|
||||
"requirements": [],
|
||||
"version": "v0.0.3"
|
||||
"version": "v0.0.4"
|
||||
}
|
@@ -118,7 +118,50 @@
|
||||
"error_type": { "name": "Error Type" },
|
||||
"control_type": { "name": "Control Type" },
|
||||
"mode": { "name": "Mode" },
|
||||
"rice_type": { "name": "Rice Type" }
|
||||
"rice_type": { "name": "Rice Type" },
|
||||
"db_running_status": { "name": "DB Running Status" },
|
||||
"db_program": { "name": "DB Program" },
|
||||
"db_water_level": { "name": "DB Water Level" },
|
||||
"db_temperature": { "name": "DB Temperature" },
|
||||
"db_dehydration_speed": { "name": "DB Dehydration Speed" },
|
||||
"db_detergent": { "name": "DB Detergent" },
|
||||
"db_softener": { "name": "DB Softener" },
|
||||
"db_position": { "name": "DB Position" },
|
||||
"db_location": { "name": "DB Location" },
|
||||
"running_status": { "name": "Running Status" },
|
||||
"mode": { "name": "Mode" },
|
||||
"program": { "name": "Program" },
|
||||
"detergent_density": { "name": "Detergent Density" },
|
||||
"softener_density": { "name": "Softener Density" },
|
||||
"season": { "name": "Season" },
|
||||
"disinfectant": { "name": "Disinfectant" },
|
||||
"dirty_degree": { "name": "Dirty Degree" },
|
||||
"stains": { "name": "Stains" },
|
||||
"add_rinse": { "name": "Add Rinse" },
|
||||
"soak_count": { "name": "Soak Count" },
|
||||
"run_mode": { "name": "Run Mode" },
|
||||
"temp_type": { "name": "Temp Type" },
|
||||
"mode_state": { "name": "Mode State" },
|
||||
"fan_set": { "name": "Fan Set" },
|
||||
"upstair_work_status": { "name": "Up Stair Work Status" },
|
||||
"downstair_work_status": { "name": "Down Stair Work Status" },
|
||||
"middlestair_work_status": { "name": "Middle Stair Work Status" },
|
||||
"upstair_mode": { "name": "Up Stair Mode" },
|
||||
"downstair_mode": { "name": "Down Stair Mode" },
|
||||
"middlestair_mode": { "name": "Middle Stair Mode" },
|
||||
"prevent_wrinkle": { "name": "Prevent Wrinkle" },
|
||||
"material": { "name": "Material" },
|
||||
"sterilize": { "name": "Sterilize" },
|
||||
"dryness_level": { "name": "Dryness Level" },
|
||||
"dry_temp": { "name": "Dry Temperature" },
|
||||
"intensity": { "name": "Intensity" },
|
||||
"program": { "name": "Program" },
|
||||
"wind_gear": { "name": "Wind Gear" },
|
||||
"wind_speed": { "name": "Wind Speed" },
|
||||
"light_color": { "name": "Light Color" },
|
||||
"bright_led": { "name": "Bright LED" },
|
||||
"humidity_mode": { "name": "Humidity Mode" },
|
||||
"tank_status": { "name": "Tank Status" }
|
||||
},
|
||||
"sensor": {
|
||||
"bright": { "name": "Brightness" },
|
||||
@@ -186,7 +229,115 @@
|
||||
"warming_time": { "name": "Warming Time" },
|
||||
"delay_time": { "name": "Delay Time" },
|
||||
"indoor_temperature": { "name": "Indoor Temperature" },
|
||||
"outdoor_temperature": { "name": "Outdoor Temperature" }
|
||||
"outdoor_temperature": { "name": "Outdoor Temperature" },
|
||||
"db_remain_time": { "name": "DB Remain Time" },
|
||||
"db_progress": { "name": "DB Progress" },
|
||||
"db_error_code": { "name": "DB Error Code" },
|
||||
"db_set_dewater_time": { "name": "DB Set Dewater Time" },
|
||||
"db_set_wash_time": { "name": "DB Set Wash Time" },
|
||||
"db_project_no": { "name": "DB Project No" },
|
||||
"db_device_software_version": { "name": "DB Device Software Version" },
|
||||
"db_rinse_count": { "name": "DB Rinse Count" },
|
||||
"db_wash_time": { "name": "DB Wash Time" },
|
||||
"db_appointment_time": { "name": "DB Appointment Time" },
|
||||
"db_appointment": { "name": "DB Appointment" },
|
||||
"db_dehydration_time": { "name": "DB Dehydration Time" },
|
||||
"db_cycle_memory": { "name": "DB Cycle Memory" },
|
||||
"dehydration_speed": { "name": "Dehydration Speed" },
|
||||
"wash_time": { "name": "Wash Time" },
|
||||
"appointment_time": { "name": "Appointment Time" },
|
||||
"remain_time": { "name": "Remain Time" },
|
||||
"project_no": { "name": "Project No" },
|
||||
"dryer": { "name": "Dryer" },
|
||||
"remote_control_flag": { "name": "Remote Control Flag" },
|
||||
"progress": { "name": "Progress" },
|
||||
"cloud_cycle_low": { "name": "Cloud Cycle Low" },
|
||||
"cloud_cycle_high": { "name": "Cloud Cycle High" },
|
||||
"cloud_cycle_jiepai1": { "name": "Cloud Cycle Jiepai1" },
|
||||
"cloud_cycle_jiepai2": { "name": "Cloud Cycle Jiepai2" },
|
||||
"cloud_cycle_jiepai3": { "name": "Cloud Cycle Jiepai3" },
|
||||
"cloud_cycle_jiepai4": { "name": "Cloud Cycle Jiepai4" },
|
||||
"cloud_cycle_jiepai_time1": { "name": "Cloud Cycle Jiepai Time1" },
|
||||
"dehydration_time_value": { "name": "Dehydration Time Value" },
|
||||
"cloud_cycle_jiepai_time3": { "name": "Cloud Cycle Jiepai Time3" },
|
||||
"cloud_cycle_jiepai_time4": { "name": "Cloud Cycle Jiepai Time4" },
|
||||
"customize_machine_cycle": { "name": "Customize Machine Cycle" },
|
||||
"detergent_global": { "name": "Detergent Global" },
|
||||
"softener_global": { "name": "Softener Global" },
|
||||
"detergent_density_global": { "name": "Detergent Density Global" },
|
||||
"softener_density_global": { "name": "Softener Density Global" },
|
||||
"fresh_air_time": { "name": "Fresh Air Time" },
|
||||
"flocks_remind_period": { "name": "Flocks Remind Period" },
|
||||
"device_software_version": { "name": "Device Software Version" },
|
||||
"expert_step": { "name": "Expert Step" },
|
||||
"error_code": { "name": "Error Code" },
|
||||
"flocks_wash_count": { "name": "Flocks Wash Count" },
|
||||
"active_oxygen": { "name": "Active Oxygen" },
|
||||
"version": { "name": "Version" },
|
||||
"dehydration_time": { "name": "Dehydration Time" },
|
||||
"cloud_cycle_jiepai_time2": { "name": "Cloud Cycle Jiepai Time2" },
|
||||
"wash_time_value": { "name": "Wash Time Value" },
|
||||
"cur_temp": { "name": "Current Temperature" },
|
||||
"error_code": { "name": "Error Code" },
|
||||
"heat_max_set_temp": { "name": "Heat Max Set Temp" },
|
||||
"heat_min_set_temp": { "name": "Heat Min Set Temp" },
|
||||
"cool_max_set_temp": { "name": "Cool Max Set Temp" },
|
||||
"cool_min_set_temp": { "name": "Cool Min Set Temp" },
|
||||
"auto_max_set_temp": { "name": "Auto Max Set Temp" },
|
||||
"auto_min_set_temp": { "name": "Auto Min Set Temp" },
|
||||
"preheat_on_set_temp": { "name": "Preheat On Set Temp" },
|
||||
"preheat_max_set_temp": { "name": "Preheat Max Set Temp" },
|
||||
"preheat_min_set_temp": { "name": "Preheat Min Set Temp" },
|
||||
"version": { "name": "Version" },
|
||||
"temp_set": { "name": "Temperature Set" },
|
||||
"room_temp_value": { "name": "Room Temperature Value" },
|
||||
"clean_net_used_time": { "name": "Clean Net Used Time" },
|
||||
"change_net_used_time": { "name": "Change Net Used Time" },
|
||||
"tvoc_value": { "name": "TVOC Value" },
|
||||
"change_set_real_time": { "name": "Change Set Real Time" },
|
||||
"clean_set_real_time": { "name": "Clean Set Real Time" },
|
||||
"humidity_set": { "name": "Humidity Set" },
|
||||
"room_aqi_value": { "name": "Room AQI Value" },
|
||||
"change_net_set_time": { "name": "Change Net Set Time" },
|
||||
"clean_net_set_time": { "name": "Clean Net Set Time" },
|
||||
"humidity_value": { "name": "Humidity Value" },
|
||||
"hcho_value": { "name": "HCHO Value" },
|
||||
"pm25_value": { "name": "PM2.5 Value" },
|
||||
"co2_value": { "name": "CO2 Value" },
|
||||
"machine_type": { "name": "Machine Type" },
|
||||
"upstair_temp": { "name": "Up Stair Temperature" },
|
||||
"downstair_temp": { "name": "Down Stair Temperature" },
|
||||
"middlestair_temp": { "name": "Middle Stair Temperature" },
|
||||
"upstair_hour": { "name": "Up Stair Hour" },
|
||||
"upstair_min": { "name": "Up Stair Min" },
|
||||
"upstair_sec": { "name": "Up Stair Sec" },
|
||||
"middlestair_hour": { "name": "Middle Stair Hour" },
|
||||
"middlestair_min": { "name": "Middle Stair Min" },
|
||||
"middlestair_sec": { "name": "Middle Stair Sec" },
|
||||
"downstair_hour": { "name": "Down Stair Hour" },
|
||||
"downstair_min": { "name": "Down Stair Min" },
|
||||
"downstair_sec": { "name": "Down Stair Sec" },
|
||||
"order_hour": { "name": "Order Hour" },
|
||||
"order_min": { "name": "Order Min" },
|
||||
"order_sec": { "name": "Order Sec" },
|
||||
"appointment_time": { "name": "Appointment Time" },
|
||||
"project_no": { "name": "Project Number" },
|
||||
"remain_time": { "name": "Remain Time" },
|
||||
"progress": { "name": "Progress" },
|
||||
"version": { "name": "Version" },
|
||||
"error_code": { "name": "Error Code" },
|
||||
"dry_time": { "name": "Dry Time" },
|
||||
"version": { "name": "Version" },
|
||||
"time_off": { "name": "Time Off" },
|
||||
"humidity": { "name": "Humidity" },
|
||||
"cur_temperature": { "name": "Current Temperature" },
|
||||
"cur_humidity": { "name": "Current Humidity" },
|
||||
"time_on": { "name": "Time On" },
|
||||
"air_dry_left_time": { "name": "Air Dry Left Time" },
|
||||
"sensor_battery": { "name": "Sensor Battery" },
|
||||
"running_percent": { "name": "Running Percent" },
|
||||
"sensor_humidify": { "name": "Sensor Humidify" },
|
||||
"sensor_temperature": { "name": "Sensor Temperature" }
|
||||
},
|
||||
"binary_sensor": {
|
||||
"air_status": { "name": "Air Running" },
|
||||
@@ -210,6 +361,9 @@
|
||||
"climate": {
|
||||
"thermostat": { "name": "Thermostat" }
|
||||
},
|
||||
"humidifier": {
|
||||
"humidifier": { "name": "Humidifier" }
|
||||
},
|
||||
"switch": {
|
||||
"airswitch": { "name": "AC Switch" },
|
||||
"waterswitch": { "name": "Water Switch" },
|
||||
@@ -236,7 +390,125 @@
|
||||
"pre_regeneration": { "name": "Pre Regeneration" },
|
||||
"dry": { "name": "Dry" },
|
||||
"prevent_straight_wind": { "name": "Prevent Straight Wind" },
|
||||
"aux_heat": { "name": "Aux Heat" }
|
||||
"aux_heat": { "name": "Aux Heat" },
|
||||
"db_power": { "name": "DB Power" },
|
||||
"db_clean_notification": { "name": "DB Clean Notification" },
|
||||
"db_softener_needed": { "name": "DB Softener Needed" },
|
||||
"db_detergent_needed": { "name": "DB Detergent Needed" },
|
||||
"db_nightly_wash": { "name": "DB Nightly Wash" },
|
||||
"db_baby_lock": { "name": "DB Baby Lock" },
|
||||
"db_light": { "name": "DB Light" },
|
||||
"db_steam_wash": { "name": "DB Steam Wash" },
|
||||
"db_fast_clean_wash": { "name": "DB Fast Clean Wash" },
|
||||
"db_wash_dry_link": { "name": "DB Wash Dry Link" },
|
||||
"power": { "name": "Power" },
|
||||
"softener_lack": { "name": "Softener Lack" },
|
||||
"detergent_lack": { "name": "Detergent Lack" },
|
||||
"door_opened": { "name": "Door Opened" },
|
||||
"bucket_water_overheating": { "name": "Bucket Water Overheating" },
|
||||
"memory": { "name": "Memory" },
|
||||
"appointment": { "name": "Appointment" },
|
||||
"spray_wash": { "name": "Spray Wash" },
|
||||
"old_speedy": { "name": "Old Speedy" },
|
||||
"nightly": { "name": "Nightly" },
|
||||
"down_light": { "name": "Down Light" },
|
||||
"easy_ironing": { "name": "Easy Ironing" },
|
||||
"super_clean_wash": { "name": "Super Clean Wash" },
|
||||
"intelligent_wash": { "name": "Intelligent Wash" },
|
||||
"strong_wash": { "name": "Strong Wash" },
|
||||
"silent": { "name": "Silent" },
|
||||
"speedy": { "name": "Speedy" },
|
||||
"lock": { "name": "Lock" },
|
||||
"flocks_switcher": { "name": "Flocks Switcher" },
|
||||
"fresh_anion_switch": { "name": "Fresh Anion Switch" },
|
||||
"dry_weighing_already": { "name": "Dry Weighing Already" },
|
||||
"keep_fresh_status": { "name": "Keep Fresh Status" },
|
||||
"drying_tunnel_overheating": { "name": "Drying Tunnel Overheating" },
|
||||
"fast_clean_wash": { "name": "Fast Clean Wash" },
|
||||
"steam_wash": { "name": "Steam Wash" },
|
||||
"beforehand_wash": { "name": "Beforehand Wash" },
|
||||
"ai_flag": { "name": "AI Flag" },
|
||||
"water_plus": { "name": "Water Plus" },
|
||||
"soak": { "name": "Soak" },
|
||||
"ultraviolet_lamp": { "name": "Ultraviolet Lamp" },
|
||||
"eye_wash": { "name": "Eye Wash" },
|
||||
"microbubble": { "name": "Microbubble" },
|
||||
"wind_dispel": { "name": "Wind Dispel" },
|
||||
"cycle_memory": { "name": "Cycle Memory" },
|
||||
"freeze_state": { "name": "Freeze State" },
|
||||
"power_state": { "name": "Power State" },
|
||||
"heat_enable": { "name": "Heat Enable" },
|
||||
"cool_enable": { "name": "Cool Enable" },
|
||||
"silence_set_state": { "name": "Silence Set State" },
|
||||
"time_set_state": { "name": "Time Set State" },
|
||||
"silence_state": { "name": "Silence State" },
|
||||
"holiday_state": { "name": "Holiday State" },
|
||||
"holiday_set_state": { "name": "Holiday Set State" },
|
||||
"holiday_on_state": { "name": "Holiday On State" },
|
||||
"room_temp_ctrl": { "name": "Room Temp Ctrl" },
|
||||
"room_temp_set": { "name": "Room Temp Set" },
|
||||
"comp_state": { "name": "Comp State" },
|
||||
"day_time_state": { "name": "Day Time State" },
|
||||
"week_time_state": { "name": "Week Time State" },
|
||||
"warn_state": { "name": "Warn State" },
|
||||
"defrost_state": { "name": "Defrost State" },
|
||||
"pre_heat": { "name": "Pre Heat" },
|
||||
"lock_state": { "name": "Lock State" },
|
||||
"esp_state": { "name": "ESP State" },
|
||||
"passby_enable": { "name": "Passby Enable" },
|
||||
"preheat_enable": { "name": "Preheat Enable" },
|
||||
"remain_able": { "name": "Remain Able" },
|
||||
"hcho_check_enable": { "name": "HCHO Check Enable" },
|
||||
"co2_check_enable": { "name": "CO2 Check Enable" },
|
||||
"function_set_link": { "name": "Function Set Link" },
|
||||
"function_set_sleep": { "name": "Function Set Sleep" },
|
||||
"function_set_energy_save": { "name": "Function Set Energy Save" },
|
||||
"function_set_prheat": { "name": "Function Set Preheat" },
|
||||
"function_set_ultimate": { "name": "Function Set Ultimate" },
|
||||
"clean_net_clean_flg": { "name": "Clean Net Clean Flag" },
|
||||
"change_net_change_flg": { "name": "Change Net Change Flag" },
|
||||
"condensation_state": { "name": "Condensation State" },
|
||||
"humidity_state": { "name": "Humidity State" },
|
||||
"preheat_state": { "name": "Preheat State" },
|
||||
"esp_enable": { "name": "ESP Enable" },
|
||||
"pm25_check_enable": { "name": "PM2.5 Check Enable" },
|
||||
"timer_state": { "name": "Timer State" },
|
||||
"humidity_check_enable": { "name": "Humidity Check Enable" },
|
||||
"door_middlestair": { "name": "Door Middle Stair" },
|
||||
"door_upstair": { "name": "Door Up Stair" },
|
||||
"door_downstair": { "name": "Door Down Stair" },
|
||||
"downstair_ispreheat": { "name": "Down Stair Is Preheat" },
|
||||
"upstair_ispreheat": { "name": "Up Stair Is Preheat" },
|
||||
"downstair_iscooling": { "name": "Down Stair Is Cooling" },
|
||||
"upstair_iscooling": { "name": "Up Stair Is Cooling" },
|
||||
"middlestair_ispreheat": { "name": "Middle Stair Is Preheat" },
|
||||
"middlestair_iscooling": { "name": "Middle Stair Is Cooling" },
|
||||
"lock": { "name": "Lock" },
|
||||
"is_error": { "name": "Is Error" },
|
||||
"uv_disinfect": { "name": "UV Disinfect" },
|
||||
"ai_switch": { "name": "AI Switch" },
|
||||
"light": { "name": "Light" },
|
||||
"appointment": { "name": "Appointment" },
|
||||
"prevent_wrinkle_switch": { "name": "Prevent Wrinkle Switch" },
|
||||
"steam_switch": { "name": "Steam Switch" },
|
||||
"damp_dry_signal": { "name": "Damp Dry Signal" },
|
||||
"eco_dry_switch": { "name": "Eco Dry Switch" },
|
||||
"bucket_clean_switch": { "name": "Bucket Clean Switch" },
|
||||
"water_box": { "name": "Water Box" },
|
||||
"baby_lock": { "name": "Baby Lock" },
|
||||
"remind_sound": { "name": "Remind Sound" },
|
||||
"steam": { "name": "Steam" },
|
||||
"power": { "name": "Power" },
|
||||
"door_warn": { "name": "Door Warning" },
|
||||
"disinfect_on_off": { "name": "Disinfect On Off" },
|
||||
"power_on_timer": { "name": "Power On Timer" },
|
||||
"power": { "name": "Power" },
|
||||
"buzzer": { "name": "Buzzer" },
|
||||
"power_off_timer": { "name": "Power Off Timer" },
|
||||
"display_on_off": { "name": "Display On Off" },
|
||||
"netions_on_off": { "name": "Net Ions On Off" },
|
||||
"airdry_on_off": { "name": "Air Dry On Off" },
|
||||
"add_water_flag": { "name": "Add Water Flag" }
|
||||
}
|
||||
}
|
||||
}
|
@@ -118,7 +118,50 @@
|
||||
"error_type": { "name": "错误类型" },
|
||||
"control_type": { "name": "控制类型" },
|
||||
"mode": { "name": "模式" },
|
||||
"rice_type": { "name": "米种类型" }
|
||||
"rice_type": { "name": "米种类型" },
|
||||
"db_running_status": { "name": "运行状态" },
|
||||
"db_program": { "name": "洗涤程序" },
|
||||
"db_water_level": { "name": "水位" },
|
||||
"db_temperature": { "name": "温度" },
|
||||
"db_dehydration_speed": { "name": "脱水转速" },
|
||||
"db_detergent": { "name": "洗涤剂" },
|
||||
"db_softener": { "name": "柔顺剂" },
|
||||
"db_position": { "name": "位置" },
|
||||
"db_location": { "name": "地点" },
|
||||
"running_status": { "name": "运行状态" },
|
||||
"mode": { "name": "模式" },
|
||||
"program": { "name": "程序" },
|
||||
"detergent_density": { "name": "洗涤剂浓度" },
|
||||
"softener_density": { "name": "柔顺剂浓度" },
|
||||
"season": { "name": "季节" },
|
||||
"disinfectant": { "name": "消毒剂" },
|
||||
"dirty_degree": { "name": "脏污程度" },
|
||||
"stains": { "name": "污渍" },
|
||||
"add_rinse": { "name": "加漂洗" },
|
||||
"soak_count": { "name": "浸泡次数" },
|
||||
"run_mode": { "name": "运行模式" },
|
||||
"temp_type": { "name": "温度类型" },
|
||||
"mode_state": { "name": "模式状态" },
|
||||
"fan_set": { "name": "风扇设置" },
|
||||
"upstair_work_status": { "name": "上层工作状态" },
|
||||
"downstair_work_status": { "name": "下层工作状态" },
|
||||
"middlestair_work_status": { "name": "中层工作状态" },
|
||||
"upstair_mode": { "name": "上层模式" },
|
||||
"downstair_mode": { "name": "下层模式" },
|
||||
"middlestair_mode": { "name": "中层模式" },
|
||||
"prevent_wrinkle": { "name": "防皱" },
|
||||
"material": { "name": "材质" },
|
||||
"sterilize": { "name": "杀菌" },
|
||||
"dryness_level": { "name": "干燥程度" },
|
||||
"dry_temp": { "name": "烘干温度" },
|
||||
"intensity": { "name": "强度" },
|
||||
"program": { "name": "程序" },
|
||||
"wind_gear": { "name": "风档" },
|
||||
"wind_speed": { "name": "风速" },
|
||||
"light_color": { "name": "灯光颜色" },
|
||||
"bright_led": { "name": "亮度LED" },
|
||||
"humidity_mode": { "name": "湿度模式" },
|
||||
"tank_status": { "name": "水箱状态" }
|
||||
},
|
||||
"sensor": {
|
||||
"bright": { "name": "亮度" },
|
||||
@@ -186,7 +229,115 @@
|
||||
"warming_time": { "name": "保温时间" },
|
||||
"delay_time": { "name": "预约时间" },
|
||||
"indoor_temperature": { "name": "室内温度" },
|
||||
"outdoor_temperature": { "name": "室外温度" }
|
||||
"outdoor_temperature": { "name": "室外温度" },
|
||||
"db_remain_time": { "name": "剩余时间" },
|
||||
"db_progress": { "name": "进度" },
|
||||
"db_error_code": { "name": "错误代码" },
|
||||
"db_set_dewater_time": { "name": "设置脱水时间" },
|
||||
"db_set_wash_time": { "name": "设置洗涤时间" },
|
||||
"db_project_no": { "name": "项目编号" },
|
||||
"db_device_software_version": { "name": "设备软件版本" },
|
||||
"db_rinse_count": { "name": "漂洗次数" },
|
||||
"db_wash_time": { "name": "洗涤时间" },
|
||||
"db_appointment_time": { "name": "预约时间" },
|
||||
"db_appointment": { "name": "预约" },
|
||||
"db_dehydration_time": { "name": "脱水时间" },
|
||||
"db_cycle_memory": { "name": "循环记忆" },
|
||||
"dehydration_speed": { "name": "脱水转速" },
|
||||
"wash_time": { "name": "洗涤时间" },
|
||||
"appointment_time": { "name": "预约时间" },
|
||||
"remain_time": { "name": "剩余时间" },
|
||||
"project_no": { "name": "项目编号" },
|
||||
"dryer": { "name": "烘干机" },
|
||||
"remote_control_flag": { "name": "遥控标志" },
|
||||
"progress": { "name": "进度" },
|
||||
"cloud_cycle_low": { "name": "云循环低" },
|
||||
"cloud_cycle_high": { "name": "云循环高" },
|
||||
"cloud_cycle_jiepai1": { "name": "云循环节拍1" },
|
||||
"cloud_cycle_jiepai2": { "name": "云循环节拍2" },
|
||||
"cloud_cycle_jiepai3": { "name": "云循环节拍3" },
|
||||
"cloud_cycle_jiepai4": { "name": "云循环节拍4" },
|
||||
"cloud_cycle_jiepai_time1": { "name": "云循环节拍时间1" },
|
||||
"dehydration_time_value": { "name": "脱水时间值" },
|
||||
"cloud_cycle_jiepai_time3": { "name": "云循环节拍时间3" },
|
||||
"cloud_cycle_jiepai_time4": { "name": "云循环节拍时间4" },
|
||||
"customize_machine_cycle": { "name": "自定义机器循环" },
|
||||
"detergent_global": { "name": "洗涤剂全局" },
|
||||
"softener_global": { "name": "柔顺剂全局" },
|
||||
"detergent_density_global": { "name": "洗涤剂浓度全局" },
|
||||
"softener_density_global": { "name": "柔顺剂浓度全局" },
|
||||
"fresh_air_time": { "name": "新风时间" },
|
||||
"flocks_remind_period": { "name": "毛绒提醒周期" },
|
||||
"device_software_version": { "name": "设备软件版本" },
|
||||
"expert_step": { "name": "专家步骤" },
|
||||
"error_code": { "name": "错误代码" },
|
||||
"flocks_wash_count": { "name": "毛绒洗涤次数" },
|
||||
"active_oxygen": { "name": "活性氧" },
|
||||
"version": { "name": "版本" },
|
||||
"dehydration_time": { "name": "脱水时间" },
|
||||
"cloud_cycle_jiepai_time2": { "name": "云循环节拍时间2" },
|
||||
"wash_time_value": { "name": "洗涤时间值" },
|
||||
"cur_temp": { "name": "当前温度" },
|
||||
"error_code": { "name": "错误代码" },
|
||||
"heat_max_set_temp": { "name": "制热最大设定温度" },
|
||||
"heat_min_set_temp": { "name": "制热最小设定温度" },
|
||||
"cool_max_set_temp": { "name": "制冷最大设定温度" },
|
||||
"cool_min_set_temp": { "name": "制冷最小设定温度" },
|
||||
"auto_max_set_temp": { "name": "自动最大设定温度" },
|
||||
"auto_min_set_temp": { "name": "自动最小设定温度" },
|
||||
"preheat_on_set_temp": { "name": "预热开启设定温度" },
|
||||
"preheat_max_set_temp": { "name": "预热最大设定温度" },
|
||||
"preheat_min_set_temp": { "name": "预热最小设定温度" },
|
||||
"version": { "name": "版本" },
|
||||
"temp_set": { "name": "设定温度" },
|
||||
"room_temp_value": { "name": "室温值" },
|
||||
"clean_net_used_time": { "name": "清洁网使用时间" },
|
||||
"change_net_used_time": { "name": "更换网使用时间" },
|
||||
"tvoc_value": { "name": "TVOC值" },
|
||||
"change_set_real_time": { "name": "更换设定实际时间" },
|
||||
"clean_set_real_time": { "name": "清洁设定实际时间" },
|
||||
"humidity_set": { "name": "湿度设置" },
|
||||
"room_aqi_value": { "name": "室内AQI值" },
|
||||
"change_net_set_time": { "name": "更换网设定时间" },
|
||||
"clean_net_set_time": { "name": "清洁网设定时间" },
|
||||
"humidity_value": { "name": "湿度值" },
|
||||
"hcho_value": { "name": "甲醛值" },
|
||||
"pm25_value": { "name": "PM2.5值" },
|
||||
"co2_value": { "name": "CO2值" },
|
||||
"machine_type": { "name": "机器类型" },
|
||||
"upstair_temp": { "name": "上层温度" },
|
||||
"downstair_temp": { "name": "下层温度" },
|
||||
"middlestair_temp": { "name": "中层温度" },
|
||||
"upstair_hour": { "name": "上层小时" },
|
||||
"upstair_min": { "name": "上层分钟" },
|
||||
"upstair_sec": { "name": "上层秒" },
|
||||
"middlestair_hour": { "name": "中层小时" },
|
||||
"middlestair_min": { "name": "中层分钟" },
|
||||
"middlestair_sec": { "name": "中层秒" },
|
||||
"downstair_hour": { "name": "下层小时" },
|
||||
"downstair_min": { "name": "下层分钟" },
|
||||
"downstair_sec": { "name": "下层秒" },
|
||||
"order_hour": { "name": "预约小时" },
|
||||
"order_min": { "name": "预约分钟" },
|
||||
"order_sec": { "name": "预约秒" },
|
||||
"appointment_time": { "name": "预约时间" },
|
||||
"project_no": { "name": "项目编号" },
|
||||
"remain_time": { "name": "剩余时间" },
|
||||
"progress": { "name": "进度" },
|
||||
"version": { "name": "版本" },
|
||||
"error_code": { "name": "错误代码" },
|
||||
"dry_time": { "name": "烘干时间" },
|
||||
"version": { "name": "版本" },
|
||||
"time_off": { "name": "关机时间" },
|
||||
"humidity": { "name": "湿度" },
|
||||
"cur_temperature": { "name": "当前温度" },
|
||||
"cur_humidity": { "name": "当前湿度" },
|
||||
"time_on": { "name": "开机时间" },
|
||||
"air_dry_left_time": { "name": "风干剩余时间" },
|
||||
"sensor_battery": { "name": "传感器电池" },
|
||||
"running_percent": { "name": "运行百分比" },
|
||||
"sensor_humidify": { "name": "传感器湿度" },
|
||||
"sensor_temperature": { "name": "传感器温度" }
|
||||
},
|
||||
"binary_sensor": {
|
||||
"air_status": { "name": "空气运行" },
|
||||
@@ -210,6 +361,9 @@
|
||||
"climate": {
|
||||
"thermostat": { "name": "温控器" }
|
||||
},
|
||||
"humidifier": {
|
||||
"humidifier": { "name": "加湿器" }
|
||||
},
|
||||
"switch": {
|
||||
"airswitch": { "name": "空调开关" },
|
||||
"waterswitch": { "name": "热水开关" },
|
||||
@@ -236,7 +390,125 @@
|
||||
"pre_regeneration": { "name": "预再生" },
|
||||
"dry": { "name": "干燥" },
|
||||
"prevent_straight_wind": { "name": "防直吹" },
|
||||
"aux_heat": { "name": "电辅热" }
|
||||
"aux_heat": { "name": "电辅热" },
|
||||
"db_power": { "name": "洗衣机电源" },
|
||||
"db_clean_notification": { "name": "清洁提醒" },
|
||||
"db_softener_needed": { "name": "需要柔顺剂" },
|
||||
"db_detergent_needed": { "name": "需要洗涤剂" },
|
||||
"db_nightly_wash": { "name": "夜间洗涤" },
|
||||
"db_baby_lock": { "name": "童锁" },
|
||||
"db_light": { "name": "照明" },
|
||||
"db_steam_wash": { "name": "蒸汽洗涤" },
|
||||
"db_fast_clean_wash": { "name": "快速清洁洗涤" },
|
||||
"db_wash_dry_link": { "name": "洗烘联动" },
|
||||
"power": { "name": "电源" },
|
||||
"softener_lack": { "name": "柔顺剂不足" },
|
||||
"detergent_lack": { "name": "洗涤剂不足" },
|
||||
"door_opened": { "name": "门已打开" },
|
||||
"bucket_water_overheating": { "name": "桶内水温过热" },
|
||||
"memory": { "name": "记忆" },
|
||||
"appointment": { "name": "预约" },
|
||||
"spray_wash": { "name": "喷淋洗涤" },
|
||||
"old_speedy": { "name": "老式快速" },
|
||||
"nightly": { "name": "夜间" },
|
||||
"down_light": { "name": "下灯" },
|
||||
"easy_ironing": { "name": "易熨烫" },
|
||||
"super_clean_wash": { "name": "超净洗涤" },
|
||||
"intelligent_wash": { "name": "智能洗涤" },
|
||||
"strong_wash": { "name": "强力洗涤" },
|
||||
"silent": { "name": "静音" },
|
||||
"speedy": { "name": "快速" },
|
||||
"lock": { "name": "锁定" },
|
||||
"flocks_switcher": { "name": "毛绒切换器" },
|
||||
"fresh_anion_switch": { "name": "负离子开关" },
|
||||
"dry_weighing_already": { "name": "已称重" },
|
||||
"keep_fresh_status": { "name": "保持新鲜状态" },
|
||||
"drying_tunnel_overheating": { "name": "烘干通道过热" },
|
||||
"fast_clean_wash": { "name": "快速清洁洗涤" },
|
||||
"steam_wash": { "name": "蒸汽洗涤" },
|
||||
"beforehand_wash": { "name": "预洗" },
|
||||
"ai_flag": { "name": "AI标志" },
|
||||
"water_plus": { "name": "加水" },
|
||||
"soak": { "name": "浸泡" },
|
||||
"ultraviolet_lamp": { "name": "紫外线灯" },
|
||||
"eye_wash": { "name": "护眼洗涤" },
|
||||
"microbubble": { "name": "微气泡" },
|
||||
"wind_dispel": { "name": "风干" },
|
||||
"cycle_memory": { "name": "循环记忆" },
|
||||
"freeze_state": { "name": "防冻状态" },
|
||||
"power_state": { "name": "电源状态" },
|
||||
"heat_enable": { "name": "制热启用" },
|
||||
"cool_enable": { "name": "制冷启用" },
|
||||
"silence_set_state": { "name": "静音设置状态" },
|
||||
"time_set_state": { "name": "时间设置状态" },
|
||||
"silence_state": { "name": "静音状态" },
|
||||
"holiday_state": { "name": "假日状态" },
|
||||
"holiday_set_state": { "name": "假日设置状态" },
|
||||
"holiday_on_state": { "name": "假日开启状态" },
|
||||
"room_temp_ctrl": { "name": "室温控制" },
|
||||
"room_temp_set": { "name": "室温设置" },
|
||||
"comp_state": { "name": "压缩机状态" },
|
||||
"day_time_state": { "name": "日间状态" },
|
||||
"week_time_state": { "name": "周时间状态" },
|
||||
"warn_state": { "name": "警告状态" },
|
||||
"defrost_state": { "name": "除霜状态" },
|
||||
"pre_heat": { "name": "预热" },
|
||||
"lock_state": { "name": "锁定状态" },
|
||||
"esp_state": { "name": "ESP状态" },
|
||||
"passby_enable": { "name": "旁通启用" },
|
||||
"preheat_enable": { "name": "预热启用" },
|
||||
"remain_able": { "name": "保持可用" },
|
||||
"hcho_check_enable": { "name": "甲醛检测启用" },
|
||||
"co2_check_enable": { "name": "CO2检测启用" },
|
||||
"function_set_link": { "name": "功能设置联动" },
|
||||
"function_set_sleep": { "name": "功能设置睡眠" },
|
||||
"function_set_energy_save": { "name": "功能设置节能" },
|
||||
"function_set_prheat": { "name": "功能设置预热" },
|
||||
"function_set_ultimate": { "name": "功能设置终极" },
|
||||
"clean_net_clean_flg": { "name": "清洁网清洁标志" },
|
||||
"change_net_change_flg": { "name": "更换网更换标志" },
|
||||
"condensation_state": { "name": "冷凝状态" },
|
||||
"humidity_state": { "name": "湿度状态" },
|
||||
"preheat_state": { "name": "预热状态" },
|
||||
"esp_enable": { "name": "ESP启用" },
|
||||
"pm25_check_enable": { "name": "PM2.5检测启用" },
|
||||
"timer_state": { "name": "定时器状态" },
|
||||
"humidity_check_enable": { "name": "湿度检测启用" },
|
||||
"door_middlestair": { "name": "中层门" },
|
||||
"door_upstair": { "name": "上层门" },
|
||||
"door_downstair": { "name": "下层门" },
|
||||
"downstair_ispreheat": { "name": "下层预热" },
|
||||
"upstair_ispreheat": { "name": "上层预热" },
|
||||
"downstair_iscooling": { "name": "下层冷却" },
|
||||
"upstair_iscooling": { "name": "上层冷却" },
|
||||
"middlestair_ispreheat": { "name": "中层预热" },
|
||||
"middlestair_iscooling": { "name": "中层冷却" },
|
||||
"lock": { "name": "锁定" },
|
||||
"is_error": { "name": "错误状态" },
|
||||
"uv_disinfect": { "name": "紫外线消毒" },
|
||||
"ai_switch": { "name": "AI开关" },
|
||||
"light": { "name": "灯光" },
|
||||
"appointment": { "name": "预约" },
|
||||
"prevent_wrinkle_switch": { "name": "防皱开关" },
|
||||
"steam_switch": { "name": "蒸汽开关" },
|
||||
"damp_dry_signal": { "name": "湿干信号" },
|
||||
"eco_dry_switch": { "name": "节能烘干开关" },
|
||||
"bucket_clean_switch": { "name": "桶清洁开关" },
|
||||
"water_box": { "name": "水箱" },
|
||||
"baby_lock": { "name": "童锁" },
|
||||
"remind_sound": { "name": "提醒声音" },
|
||||
"steam": { "name": "蒸汽" },
|
||||
"power": { "name": "电源" },
|
||||
"door_warn": { "name": "门警告" },
|
||||
"disinfect_on_off": { "name": "消毒开关" },
|
||||
"power_on_timer": { "name": "开机定时器" },
|
||||
"power": { "name": "电源" },
|
||||
"buzzer": { "name": "蜂鸣器" },
|
||||
"power_off_timer": { "name": "关机定时器" },
|
||||
"display_on_off": { "name": "显示开关" },
|
||||
"netions_on_off": { "name": "负离子开关" },
|
||||
"airdry_on_off": { "name": "风干开关" },
|
||||
"add_water_flag": { "name": "加水标志" }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user