feat: add control for newwind device. Fix #5.

This commit is contained in:
sususweet
2025-10-01 18:32:47 +08:00
parent 89f3e6e6f8
commit b81ef0e007
3 changed files with 228 additions and 212 deletions

View File

@@ -11,38 +11,42 @@ DEVICE_MAPPING = {
"entities": {
Platform.FAN: {
"fan": {
"power": "power",
"power": "new_wind_machine",
"speeds": [
{"wind_speed_real": 20},
{"wind_speed_real": 40},
{"wind_speed_real": 60},
{"wind_speed_real": 80},
{"wind_speed_real": 100},
{"fresh_air_fan_speed": 20},
{"fresh_air_fan_speed": 40},
{"fresh_air_fan_speed": 60},
{"fresh_air_fan_speed": 80},
{"fresh_air_fan_speed": 100},
],
"preset_modes": {
"heat": {
"mode": "heat"
"heat_exchange": {
"fresh_air_mode": 1,
"wind_strength": 0
},
"cool": {
"mode": "cool"
"smooth_in": {
"fresh_air_mode": 2,
"wind_strength": 0
},
"rough_in": {
"fresh_air_mode": 2,
"wind_strength": 1
},
"smooth_out": {
"fresh_air_mode": 3,
"wind_strength": 0
},
"rough_out": {
"fresh_air_mode": 3,
"wind_strength": 1
},
"auto": {
"mode": "auto"
"fresh_air_mode": 4,
"wind_strength": 0
},
"dry": {
"mode": "dry"
},
"fan": {
"mode": "fan"
},
"standby": {
"mode": "standby"
},
"dryconstant": {
"mode": "dryconstant"
},
"dryauto": {
"mode": "dryauto"
"innercycle": {
"fresh_air_mode": 5,
"wind_strength": 0
},
}
}
@@ -95,6 +99,10 @@ DEVICE_MAPPING = {
}
},
Platform.SWITCH: {
"fresh_air_remove_odor": {
"device_class": SwitchDeviceClass.SWITCH,
"rationale": [0, 1],
},
"dry": {
"device_class": SwitchDeviceClass.SWITCH,
},

View File

@@ -122,6 +122,195 @@
}
},
"entity": {
"binary_sensor": {
"air_status": {
"name": "Air Running"
},
"bar_door_state": {
"name": "Bar Door State"
},
"bottom_hot": {
"name": "Bottom Hot"
},
"bright_lack": {
"name": "Brightness Lack"
},
"carpet_switch": {
"name": "Carpet Switch"
},
"chlorine_sterilization_error": {
"name": "Chlorine Sterilization Error"
},
"diy_flag": {
"name": "DIY Flag"
},
"diy_main_wash": {
"name": "DIY Main Wash"
},
"diy_piao_wash": {
"name": "DIY Rinse"
},
"diy_times": {
"name": "DIY Times"
},
"flank_hot": {
"name": "Flank Hot"
},
"flexzone_door_state": {
"name": "Flexzone Door State"
},
"freezer_door_state": {
"name": "Freezer Door State"
},
"have_reserve_task": {
"name": "Have Reserve Task"
},
"is_error": {
"name": "Is Error"
},
"maintenance_remind": {
"name": "Maintenance Remind"
},
"rtc_error": {
"name": "RTC Error"
},
"softwater_lack": {
"name": "Soft Water Lack"
},
"storage_door_state": {
"name": "Storage Door State"
},
"storage_ice_home_door_state": {
"name": "Storage Ice Home Door State"
},
"top_hot": {
"name": "Top Hot"
},
"wash_stage": {
"name": "Washing Stage"
},
"water_lack": {
"name": "Water Lack"
},
"communication_error": {
"name": "Communication Error"
},
"door_status": {
"name": "Door Status"
},
"ele_exception": {
"name": "Ele Exception"
},
"elec_warning": {
"name": "Elec Warning"
},
"limit_error": {
"name": "Limit Error"
},
"sensor_error": {
"name": "Sensor Error"
},
"lock": {
"name": "Lock"
},
"furnace_light": {
"name": "Furnace Light"
},
"dissipate_heat": {
"name": "Dissipate Heat"
},
"pre_heat": {
"name": "Pre Heat"
},
"door_open": {
"name": "Door Open"
},
"lack_water": {
"name": "Lack Water"
},
"high_temperature_work": {
"name": "High Temperature Work"
},
"lack_box": {
"name": "Lack Box"
},
"clean_sink_ponding": {
"name": "Clean Sink Ponding"
},
"clean_scale": {
"name": "Clean Scale"
},
"flip_side": {
"name": "Flip Side"
},
"reaction": {
"name": "Reaction"
},
"ramadan": {
"name": "Ramadan"
},
"change_water": {
"name": "Change Water"
},
"execute": {
"name": "Execute"
},
"power": {
"name": "Power"
},
"humidify": {
"name": "Humidify"
},
"swing": {
"name": "Swing"
},
"anion": {
"name": "Anion"
},
"display_on_off": {
"name": "Display On/Off"
},
"dust_reset": {
"name": "Dust Reset"
},
"temp_wind_switch": {
"name": "Temp Wind Switch"
},
"filter_reset": {
"name": "Filter Reset"
},
"heat_status": {
"name": "Heat Status"
},
"standby_status": {
"name": "Standby Status"
}
},
"climate": {
"freezing_zone": {
"name": "Freezing Zone"
},
"left_flexzone": {
"name": "Left Flexzone"
},
"right_flexzone": {
"name": "Right Flexzone"
},
"storage_zone": {
"name": "Storage Zone"
},
"thermostat": {
"name": "Thermostat"
},
"water_heater": {
"name": "Water Heater"
}
},
"humidifier": {
"humidifier": {
"name": "Humidifier"
}
},
"select": {
"add_rinse": {
"name": "Add Rinse"
@@ -1149,193 +1338,6 @@
"name": "Current Fault Code"
}
},
"binary_sensor": {
"air_status": {
"name": "Air Running"
},
"bar_door_state": {
"name": "Bar Door State"
},
"bottom_hot": {
"name": "Bottom Hot"
},
"bright_lack": {
"name": "Brightness Lack"
},
"carpet_switch": {
"name": "Carpet Switch"
},
"chlorine_sterilization_error": {
"name": "Chlorine Sterilization Error"
},
"diy_flag": {
"name": "DIY Flag"
},
"diy_main_wash": {
"name": "DIY Main Wash"
},
"diy_piao_wash": {
"name": "DIY Rinse"
},
"diy_times": {
"name": "DIY Times"
},
"flank_hot": {
"name": "Flank Hot"
},
"flexzone_door_state": {
"name": "Flexzone Door State"
},
"freezer_door_state": {
"name": "Freezer Door State"
},
"have_reserve_task": {
"name": "Have Reserve Task"
},
"is_error": {
"name": "Is Error"
},
"maintenance_remind": {
"name": "Maintenance Remind"
},
"rtc_error": {
"name": "RTC Error"
},
"softwater_lack": {
"name": "Soft Water Lack"
},
"storage_door_state": {
"name": "Storage Door State"
},
"storage_ice_home_door_state": {
"name": "Storage Ice Home Door State"
},
"top_hot": {
"name": "Top Hot"
},
"wash_stage": {
"name": "Washing Stage"
},
"water_lack": {
"name": "Water Lack"
},
"communication_error": {
"name": "Communication Error"
},
"door_status": {
"name": "Door Status"
},
"ele_exception": {
"name": "Ele Exception"
},
"elec_warning": {
"name": "Elec Warning"
},
"limit_error": {
"name": "Limit Error"
},
"sensor_error": {
"name": "Sensor Error"
},
"lock": {
"name": "Lock"
},
"furnace_light": {
"name": "Furnace Light"
},
"dissipate_heat": {
"name": "Dissipate Heat"
},
"pre_heat": {
"name": "Pre Heat"
},
"door_open": {
"name": "Door Open"
},
"lack_water": {
"name": "Lack Water"
},
"high_temperature_work": {
"name": "High Temperature Work"
},
"lack_box": {
"name": "Lack Box"
},
"clean_sink_ponding": {
"name": "Clean Sink Ponding"
},
"clean_scale": {
"name": "Clean Scale"
},
"flip_side": {
"name": "Flip Side"
},
"reaction": {
"name": "Reaction"
},
"ramadan": {
"name": "Ramadan"
},
"change_water": {
"name": "Change Water"
},
"execute": {
"name": "Execute"
},
"power": {
"name": "Power"
},
"humidify": {
"name": "Humidify"
},
"swing": {
"name": "Swing"
},
"anion": {
"name": "Anion"
},
"display_on_off": {
"name": "Display On/Off"
},
"dust_reset": {
"name": "Dust Reset"
},
"temp_wind_switch": {
"name": "Temp Wind Switch"
},
"filter_reset": {
"name": "Filter Reset"
},
"heat_status": {
"name": "Heat Status"
},
"standby_status": {
"name": "Standby Status"
}
},
"climate": {
"freezing_zone": {
"name": "Freezing Zone"
},
"left_flexzone": {
"name": "Left Flexzone"
},
"right_flexzone": {
"name": "Right Flexzone"
},
"storage_zone": {
"name": "Storage Zone"
},
"thermostat": {
"name": "Thermostat"
},
"water_heater": {
"name": "Water Heater"
}
},
"humidifier": {
"humidifier": { "name": "Humidifier" }
},
"switch": {
"add_water_flag": {
"name": "Add Water Flag"
@@ -1706,6 +1708,9 @@
"freeze_state": {
"name": "Freeze State"
},
"fresh_air_remove_odor": {
"name": "Fresh Air Remove Odor"
},
"fresh_anion_switch": {
"name": "Fresh Anion Switch"
},

View File

@@ -1711,6 +1711,9 @@
"freeze_state": {
"name": "防冻状态"
},
"fresh_air_remove_odor": {
"name": "新风除菌"
},
"fresh_anion_switch": {
"name": "负离子开关"
},