mirror of
https://github.com/sususweet/midea-meiju-codec.git
synced 2025-10-18 12:17:41 +00:00
feat: add device for central air conditioner gateway(T0x21).
This commit is contained in:
89
custom_components/midea_auto_cloud/device_mapping/T0x21.py
Normal file
89
custom_components/midea_auto_cloud/device_mapping/T0x21.py
Normal file
@@ -0,0 +1,89 @@
|
||||
from homeassistant.const import Platform, UnitOfTemperature, PRECISION_HALVES
|
||||
from homeassistant.components.sensor import SensorStateClass, SensorDeviceClass
|
||||
from homeassistant.components.switch import SwitchDeviceClass
|
||||
|
||||
DEVICE_MAPPING = {
|
||||
"default": {
|
||||
"rationale": ["off", "on"],
|
||||
"queries": [{}],
|
||||
"centralized": ["run_mode", "fan_speed", "cooling_temp", "heating_temp", "extflag"],
|
||||
"entities": {
|
||||
Platform.CLIMATE: {
|
||||
"thermostat": {
|
||||
"power": "run_mode",
|
||||
"hvac_modes": {
|
||||
"off": {"run_mode": "0"},
|
||||
"fan_only": {"run_mode": "1"},
|
||||
"cool": {"run_mode": "2"},
|
||||
"heat": {"run_mode": "3"},
|
||||
"auto": {"run_mode": "4"},
|
||||
"dry": {"run_mode": "5"}
|
||||
},
|
||||
"fan_modes": {
|
||||
"off": {"fan_speed": "0"},
|
||||
"1": {"fan_speed": "1"},
|
||||
"2": {"fan_speed": "2"},
|
||||
"3": {"fan_speed": "3"},
|
||||
"4": {"fan_speed": "4"},
|
||||
"5": {"fan_speed": "5"},
|
||||
"6": {"fan_speed": "6"},
|
||||
"7": {"fan_speed": "7"},
|
||||
"auto": {"fan_speed": "8"}
|
||||
},
|
||||
"preset_modes": {
|
||||
"none": {"extflag": "0"},
|
||||
"electric_heat": {"extflag": "2"},
|
||||
"swing": {"extflag": "4"},
|
||||
"electric_heat_swing": {"extflag": "6"}
|
||||
},
|
||||
"target_temperature": ["temperature", "small_temperature"],
|
||||
"current_temperature": "room_temp",
|
||||
"pre_mode": "mode",
|
||||
"aux_heat": "ptc",
|
||||
"min_temp": 17,
|
||||
"max_temp": 30,
|
||||
"temperature_unit": UnitOfTemperature.CELSIUS,
|
||||
"precision": PRECISION_HALVES,
|
||||
}
|
||||
},
|
||||
Platform.SWITCH: {
|
||||
"is_lock_heat": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
"rationale": ['0', '1']
|
||||
},
|
||||
"is_lock_cool": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
"rationale": ['0', '1']
|
||||
},
|
||||
"fan_speed_lock": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
"rationale": ['0', '1']
|
||||
},
|
||||
"is_lock_rc": {
|
||||
"device_class": SwitchDeviceClass.SWITCH,
|
||||
"rationale": ['0', '1']
|
||||
},
|
||||
},
|
||||
Platform.SENSOR: {
|
||||
"room_temp": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT,
|
||||
"precision": PRECISION_HALVES
|
||||
},
|
||||
"cool_temp_set": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT,
|
||||
"precision": PRECISION_HALVES
|
||||
},
|
||||
"heat_temp_set": {
|
||||
"device_class": SensorDeviceClass.TEMPERATURE,
|
||||
"unit_of_measurement": UnitOfTemperature.CELSIUS,
|
||||
"state_class": SensorStateClass.MEASUREMENT,
|
||||
"precision": PRECISION_HALVES
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user