home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
69.7k stars 28.86k forks source link

Tuya integration shows wrong climate hvac_modes #103921

Open JackTalisker opened 7 months ago

JackTalisker commented 7 months ago

The problem

I have a Tuya thermostat detected by Tuya integration. Is has three hvac modes: off, auto and manual

Tuya integration wrongly shows off, heat_cool, heat_cool and both points to manual mode.

Screenshot 2023-11-13 164854 Screenshot 2023-11-13 160654 Screenshot 2023-11-13 161119

What version of Home Assistant Core has the issue?

2023.11.2

What was the last working version of Home Assistant Core?

none

What type of installation are you running?

Home Assistant Container

Integration causing the issue

Tuya

Link to integration documentation on our website

https://www.home-assistant.io/integrations/tuya/

Diagnostics information

tuya-69909e256233d3030ea66303d6f7e98e-Termostato-aba8bb3616f25bf00e346aac1958379d.json.txt

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

home-assistant[bot] commented 7 months ago

Hey there @tuya, @zlinoliver, @frenck, mind taking a look at this issue as it has been labeled with an integration (tuya) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `tuya` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign tuya` Removes the current integration label and assignees on the issue, add the integration domain after the command.

(message by CodeOwnersMention)


tuya documentation tuya source (message by IssueLinks)

jutos10 commented 7 months ago

I have the same issue with my tuya thermostats.

TUYA IOT/TUYA SMART APP

expected HVAC MODE: auto or manual image

expected state of thermostat: true or false (on or off) image

TUYA Integration via Home assistant => shows wrong hvac modes: off, heat_cool, heat_cool image image

DP_ID list from TUYA IOT: { "result": { "properties": [ { "code": "switch", "custom_name": "", "dp_id": 1, "time": 1698579298289, "value": true }, { "code": "temp_set", "custom_name": "", "dp_id": 2, "time": 1699902006390, "value": 135 }, { "code": "temp_current", "custom_name": "", "dp_id": 3, "time": 1699895172468, "value": 135 }, { "code": "mode", "custom_name": "", "dp_id": 4, "time": 1699710189696, "value": "auto" }, { "code": "child_lock", "custom_name": "", "dp_id": 8, "time": 1692782749983, "value": false }, { "code": "fault", "custom_name": "", "dp_id": 16, "time": 1692782749983, "value": 0 }, { "code": "temp_correction", "custom_name": "", "dp_id": 20, "time": 1692782749983, "value": 0 }, { "code": "upper_temp", "custom_name": "", "dp_id": 21, "time": 1692782749983, "value": 35 }, { "code": "lower_temp", "custom_name": "", "dp_id": 22, "time": 1692782749983, "value": 5 }, { "code": "sensor_choose", "custom_name": "", "dp_id": 25, "time": 1692782749983, "value": "2" }, { "code": "frost", "custom_name": "", "dp_id": 26, "time": 1692782749983, "value": true }, { "code": "reset", "custom_name": "", "dp_id": 31, "time": 1692782749983, "value": false }, { "code": "valve_state", "custom_name": "", "dp_id": 35, "time": 1699887957344, "value": "close" }, { "code": "work_days", "custom_name": "", "dp_id": 42, "time": 1692782749983, "value": "3" }, { "code": "week_program3", "custom_name": "", "dp_id": 43, "time": 1698130532591, "value": "AeAAPAIcAHgCWAA8ApQAlgP8ADwEsACHAeAA3AVkAJY=" }, { "code": "floor_temp_set", "custom_name": "", "dp_id": 101, "time": 1692782749983, "value": 33 }, { "code": "floor_temp_current", "custom_name": "", "dp_id": 102, "time": 1699903149859, "value": 160 }, { "code": "dif_in", "custom_name": "", "dp_id": 103, "time": 1692782749983, "value": 10 }, { "code": "dif_out", "custom_name": "", "dp_id": 104, "time": 1692782749983, "value": 1 }, { "code": "pon", "custom_name": "", "dp_id": 105, "time": 1692782749983, "value": "1" } ] }, "success": true, "t": 1699905198652, "tid": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx" }

Santanachia commented 7 months ago

it should be corrected in #82056

JackTalisker commented 7 months ago

it should be corrected in #82056

Pull request #82056 ended up with commit https://github.com/home-assistant/core/commit/bb517c269eb619d79aac7942f725e88280b335ba merged last year by @frenck on Nov 24, 2022

This is a similar but different new issue.

Santanachia commented 7 months ago

But the source of the problem is the same. Completely different devices are forcefully squeezed into one group. For example, my thermostatic valve has these modes: image But the truth is that the valve can not be off, it is impossible to cool with this device. The modes should be Open, Heat or Closed only, and all other in the presets like auto, eco, or manual.

andrus2049 commented 7 months ago

I own a Tuya/Smartlife thermostat (product_id: "9myqvomgygt9zgcs") that show similar problems in HA (tested with both this integration and the Smartlife beta HA integration).

Problems are mainly related to incorrect HVAC_MODEs (shown and settable), and Presets. With the SmartLife Android app everything is fine. Here I show the situation using the Tuya Home Assistant Integration. Mode set on IoT Tuya platform: DP instruction

Problems: "Off" selection works, but the other 3 identical "Heat/cool" modes only turn on the thermostat in Manual mode. No way to set it to Auto, or change to hot or cool mode. "Holiday" preset is shown and can be activated, but the other "Manual" and "Temporary" presets aren't shown and available to select.

Hope this help solving the compatibility issues with HA, thanks.

ThermostatTuya

Here the sets from IoT Tuya platform:

STANDARD INSTRUCTION SET

switch Boolean "{true,false}" mode Enum
{ "range": [ "auto", "holiday", "manual", "temporary" ] } temp_set Integer { "unit": "℃", "min": 5, "max": 350, "scale": 1, "step": 1 } upper_temp Integer { "unit": "℃", "min": 50, "max": 350, "scale": 1, "step": 1 } lower_temp Integer { "unit": "℃", "min": 50, "max": 350, "scale": 1, "step": 1 } temp_correction Integer { "unit": "", "min": -30, "max": 30, "scale": 1, "step": 5 } holiday_temp_set Integer { "unit": "℃", "min": 50, "max": 350, "scale": 1, "step": 1 } holiday_days_set Integer { "unit": "day", "min": 0, "max": 3000, "scale": 0, "step": 1 } week_program2 Raw {} factory_reset Boolean "{true,false}" child_lock Boolean "{true,false}" temporary_time Integer { "unit": "min", "min": 0, "max": 2880, "scale": 0, "step": 1 } temp_antifreezing Integer { "unit": "", "min": 5, "max": 150, "scale": 1, "step": 1 } swing Integer { "unit": "", "min": 2, "max": 20, "scale": 1, "step": 1 } heatcool_heat_cool Enum
{ "range": [ "hc_heat", "hc_cool", "heat", "cool" ] } antifreezing_switch Boolean "{true,false}" use_password Boolean "{true,false}" password Integer { "unit": "4", "min": 0, "max": 9999, "scale": 0, "step": 1 } partial_key_lock Boolean "{true,false}"


STANDARD STATUS SET

switch Boolean "{true,false}" mode Enum
{ "range": [ "auto", "holiday", "manual", "temporary" ] } work_state Enum
{ "range": [ "off", "heat", "cool" ] } temp_set Integer { "unit": "℃", "min": 5, "max": 350, "scale": 1, "step": 1 } upper_temp Integer { "unit": "℃", "min": 50, "max": 350, "scale": 1, "step": 1 } temp_current Integer { "unit": "℃", "min": 0, "max": 400, "scale": 1, "step": 1 } lower_temp Integer { "unit": "℃", "min": 50, "max": 350, "scale": 1, "step": 1 } temp_correction Integer { "unit": "", "min": -30, "max": 30, "scale": 1, "step": 5 } holiday_temp_set Integer { "unit": "℃", "min": 50, "max": 350, "scale": 1, "step": 1 } holiday_days_set Integer { "unit": "day", "min": 0, "max": 3000, "scale": 0, "step": 1 } week_program2 Raw {} factory_reset Boolean "{true,false}" child_lock Boolean "{true,false}" countdown_left Integer { "unit": "min", "min": 0, "max": 2880, "scale": 0, "step": 1 } fault Bitmap
{ "label": [ "e1", "e2", "e3", "e4", "e5", "e6", "e7", "e8", "e9", "e10" ], "maxlen": 10 } temporary_time Integer { "unit": "min", "min": 0, "max": 2880, "scale": 0, "step": 1 } total_time Integer { "unit": "min", "min": 0, "max": 999999, "scale": 0, "step": 1 } temp_antifreezing Integer { "unit": "", "min": 5, "max": 150, "scale": 1, "step": 1 } swing Integer { "unit": "", "min": 2, "max": 20, "scale": 1, "step": 1 } time_period Integer { "unit": "", "min": 1, "max": 9, "scale": 0, "step": 1 } electricity Integer { "unit": "", "min": 0, "max": 6000, "scale": 0, "step": 1 } curent_pro_time Raw {} heatcool_heat_cool Enum
{ "range": [ "hc_heat", "hc_cool", "heat", "cool" ] } antifreezing_switch Boolean "{true,false}" use_password Boolean "{true,false}" true_off Boolean "{true,false}" password Integer { "unit": "4", "min": 0, "max": 9999, "scale": 0, "step": 1 } partial_key_lock Boolean "{true,false}"


DEVICE QUERY PROPERTIES

{ "result": { "properties": [ { "code": "switch", "custom_name": "", "dp_id": 1, "time": 1700677459517, "value": true }, { "code": "mode", "custom_name": "", "dp_id": 2, "time": 1700677373229, "value": "manual" }, { "code": "work_state", "custom_name": "", "dp_id": 3, "time": 1700612410472, "value": "off" }, { "code": "temp_set", "custom_name": "", "dp_id": 16, "time": 1700678722885, "value": 214 }, { "code": "upper_temp", "custom_name": "", "dp_id": 19, "time": 1700073411555, "value": 240 }, { "code": "temp_current", "custom_name": "", "dp_id": 24, "time": 1700678460970, "value": 217 }, { "code": "lower_temp", "custom_name": "", "dp_id": 26, "time": 1700073411557, "value": 180 }, { "code": "temp_correction", "custom_name": "", "dp_id": 27, "time": 1700073410634, "value": -15 }, { "code": "holiday_temp_set", "custom_name": "", "dp_id": 32, "time": 1699884863559, "value": 50 }, { "code": "holiday_days_set", "custom_name": "", "dp_id": 33, "time": 1700676000870, "value": 6 }, { "code": "week_program2", "custom_name": "", "dp_id": 37, "time": 1700072778610, "value": "AQAAtAYAAMgIAADSDAAA0g4AANIRAADSFgAAyAAAAAABAAC0BgAAyAgAANIMAADSDgAA0hEAANIWAADIAAAAAAEAALQGAADICAAA0gwAANIOAADSEQAA0hYAAMgAAAAAAQAAtAYAAMgIAADSDAAA0g4AANIRAADSFgAAyAAAAAABAAC0BgAAyAgAANIMAADSDgAA0hEAANIWAADIAAAAAAEAALQGAADICAAA0gwAANIOAADSEQAA0hYAAMgAAAAAAQAAtAYAAMgIAADSDAAA0g4AANIRAADSFgAAyAAAAAA=" }, { "code": "factory_reset", "custom_name": "", "dp_id": 39, "time": 1700073411532, "value": true }, { "code": "child_lock", "custom_name": "", "dp_id": 40, "time": 1700073411546, "value": false }, { "code": "countdown_left", "custom_name": "", "dp_id": 42, "time": 1699884863559, "value": 0 }, { "code": "fault", "custom_name": "", "dp_id": 45, "time": 1699884878343, "value": 0 }, { "code": "temporary_time", "custom_name": "", "dp_id": 101, "time": 1700612233350, "value": 60 }, { "code": "total_time", "custom_name": "", "dp_id": 102, "time": 1700612460272, "value": 2 }, { "code": "temp_antifreezing", "custom_name": "", "dp_id": 103, "time": 1700677460007, "value": 140 }, { "code": "swing", "custom_name": "", "dp_id": 104, "time": 1700073411552, "value": 3 }, { "code": "time_period", "custom_name": "", "dp_id": 105, "time": 1699884863559, "value": 1 }, { "code": "electricity", "custom_name": "", "dp_id": 106, "time": 1699884863559, "value": 0 }, { "code": "curent_pro_time", "custom_name": "", "dp_id": 107, "time": 1700668801980, "value": "EQAWAAMGAwc=" }, { "code": "heatcool_heat_cool", "custom_name": "", "dp_id": 108, "time": 1700073411536, "value": "hc_heat" }, { "code": "antifreezing_switch", "custom_name": "", "dp_id": 109, "time": 1700073411860, "value": true }, { "code": "use_password", "custom_name": "", "dp_id": 110, "time": 1700073411864, "value": false }, { "code": "true_off", "custom_name": "", "dp_id": 111, "time": 1700678542850, "value": false }, { "code": "password", "custom_name": "", "dp_id": 116, "time": 1700073411948, "value": 0 }, { "code": "partial_key_lock", "custom_name": "", "dp_id": 118, "time": 1700073411729, "value": false } ] }, "success": true, "t": 1700678807061, "tid": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

andrus2049 commented 7 months ago

This is the diagnostics downloaded from HA:

{ "home_assistant": { "installation_type": "Home Assistant OS", "version": "2023.11.2", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.11.6", "docker": true, "arch": "aarch64", "timezone": "Europe/Rome", "os_name": "Linux", "os_version": "6.1.21-v8", "supervisor": "2023.11.3", "host_os": "Home Assistant OS 11.1", "docker_version": "24.0.6", "chassis": "embedded", "run_as_root": true }, "custom_components": { "default_config_disabler": { "version": "0.0.2", "requirements": [] }, "hacs": { "version": "1.33.0", "requirements": [ "aiogithubapi>=22.10.1" ] }, "localtuya": { "version": "5.2.1", "requirements": [] }, "tuya_local": { "version": "2023.11.0", "requirements": [ "pycryptodome~=3.18", "tinytuya==1.12.11" ] }, "smartlife": { "version": "0.1.0", "requirements": [ "tuya-device-sharing-sdk==0.1.8" ] } }, "integration_manifest": { "domain": "tuya", "name": "Tuya", "codeowners": [ "@Tuya", "@zlinoliver", "@frenck" ], "config_flow": true, "dependencies": [ "ffmpeg" ], "dhcp": [ { "macaddress": "105A17" }, { "macaddress": "10D561" }, { "macaddress": "1869D8" }, { "macaddress": "381F8D" }, { "macaddress": "508A06" }, { "macaddress": "68572D" }, { "macaddress": "708976" }, { "macaddress": "7CF666" }, { "macaddress": "84E342" }, { "macaddress": "D4A651" }, { "macaddress": "D81F12*" } ], "documentation": "https://www.home-assistant.io/integrations/tuya", "integration_type": "hub", "iot_class": "cloud_push", "loggers": [ "tuya_iot" ], "requirements": [ "tuya-iot-py-sdk==0.6.6" ], "is_built_in": true }, "data": { "endpoint": "https://openapi.tuyaeu.com", "auth_type": 0, "country_code": "39", "app_type": "smartlife", "mqtt_connected": true, "disabled_by": null, "disabled_polling": false, "name": "NEVE PRO W", "model": "NEVE PRO W", "category": "wk", "product_id": "9myqvomgygt9zgcs", "product_name": "NEVE PRO W", "online": true, "sub": false, "time_zone": "+01:00", "active_time": "2023-11-13T14:14:23+00:00", "create_time": "2023-11-13T14:14:23+00:00", "update_time": "2023-11-15T21:22:14+00:00", "function": { "switch": { "type": "Boolean", "value": {} }, "mode": { "type": "Enum", "value": { "range": [ "auto", "holiday", "manual", "temporary" ] } }, "temp_set": { "type": "Integer", "value": { "unit": "\u2103", "min": 5, "max": 350, "scale": 1, "step": 1 } }, "upper_temp": { "type": "Integer", "value": { "unit": "\u2103", "min": 50, "max": 350, "scale": 1, "step": 1 } }, "lower_temp": { "type": "Integer", "value": { "unit": "\u2103", "min": 50, "max": 350, "scale": 1, "step": 1 } }, "temp_correction": { "type": "Integer", "value": { "unit": "", "min": -30, "max": 30, "scale": 1, "step": 5 } }, "holiday_temp_set": { "type": "Integer", "value": { "unit": "\u2103", "min": 50, "max": 350, "scale": 1, "step": 1 } }, "holiday_days_set": { "type": "Integer", "value": { "unit": "day", "min": 0, "max": 3000, "scale": 0, "step": 1 } }, "week_program2": { "type": "Raw", "value": {} }, "factory_reset": { "type": "Boolean", "value": {} }, "child_lock": { "type": "Boolean", "value": {} }, "temporary_time": { "type": "Integer", "value": { "unit": "min", "min": 0, "max": 2880, "scale": 0, "step": 1 } }, "temp_antifreezing": { "type": "Integer", "value": { "unit": "", "min": 5, "max": 150, "scale": 1, "step": 1 } }, "swing": { "type": "Integer", "value": { "unit": "", "min": 2, "max": 20, "scale": 1, "step": 1 } }, "heatcool_heat_cool": { "type": "Enum", "value": { "range": [ "hc_heat", "hc_cool", "heat", "cool" ] } }, "antifreezing_switch": { "type": "Boolean", "value": {} }, "use_password": { "type": "Boolean", "value": {} }, "password": { "type": "Integer", "value": { "unit": "4", "min": 0, "max": 9999, "scale": 0, "step": 1 } }, "partial_key_lock": { "type": "Boolean", "value": {} } }, "status_range": { "switch": { "type": "Boolean", "value": {} }, "mode": { "type": "Enum", "value": { "range": [ "auto", "holiday", "manual", "temporary" ] } }, "work_state": { "type": "Enum", "value": { "range": [ "off", "heat", "cool" ] } }, "temp_set": { "type": "Integer", "value": { "unit": "\u2103", "min": 5, "max": 350, "scale": 1, "step": 1 } }, "upper_temp": { "type": "Integer", "value": { "unit": "\u2103", "min": 50, "max": 350, "scale": 1, "step": 1 } }, "temp_current": { "type": "Integer", "value": { "unit": "\u2103", "min": 0, "max": 400, "scale": 1, "step": 1 } }, "lower_temp": { "type": "Integer", "value": { "unit": "\u2103", "min": 50, "max": 350, "scale": 1, "step": 1 } }, "temp_correction": { "type": "Integer", "value": { "unit": "", "min": -30, "max": 30, "scale": 1, "step": 5 } }, "holiday_temp_set": { "type": "Integer", "value": { "unit": "\u2103", "min": 50, "max": 350, "scale": 1, "step": 1 } }, "holiday_days_set": { "type": "Integer", "value": { "unit": "day", "min": 0, "max": 3000, "scale": 0, "step": 1 } }, "week_program2": { "type": "Raw", "value": {} }, "factory_reset": { "type": "Boolean", "value": {} }, "child_lock": { "type": "Boolean", "value": {} }, "countdown_left": { "type": "Integer", "value": { "unit": "min", "min": 0, "max": 2880, "scale": 0, "step": 1 } }, "fault": { "type": "Bitmap", "value": { "label": [ "e1", "e2", "e3", "e4", "e5", "e6", "e7", "e8", "e9", "e10" ], "maxlen": 10 } }, "temporary_time": { "type": "Integer", "value": { "unit": "min", "min": 0, "max": 2880, "scale": 0, "step": 1 } }, "total_time": { "type": "Integer", "value": { "unit": "min", "min": 0, "max": 999999, "scale": 0, "step": 1 } }, "temp_antifreezing": { "type": "Integer", "value": { "unit": "", "min": 5, "max": 150, "scale": 1, "step": 1 } }, "swing": { "type": "Integer", "value": { "unit": "", "min": 2, "max": 20, "scale": 1, "step": 1 } }, "time_period": { "type": "Integer", "value": { "unit": "", "min": 1, "max": 9, "scale": 0, "step": 1 } }, "electricity": { "type": "Integer", "value": { "unit": "", "min": 0, "max": 6000, "scale": 0, "step": 1 } }, "curent_pro_time": { "type": "Raw", "value": {} }, "heatcool_heat_cool": { "type": "Enum", "value": { "range": [ "hc_heat", "hc_cool", "heat", "cool" ] } }, "antifreezing_switch": { "type": "Boolean", "value": {} }, "use_password": { "type": "Boolean", "value": {} }, "true_off": { "type": "Boolean", "value": {} }, "password": { "type": "Integer", "value": { "unit": "4", "min": 0, "max": 9999, "scale": 0, "step": 1 } }, "partial_key_lock": { "type": "Boolean", "value": {} } }, "status": { "switch": true, "mode": "manual", "work_state": "heat", "temp_set": 214, "upper_temp": 240, "temp_current": 212, "lower_temp": 180, "temp_correction": -15, "holiday_temp_set": 50, "holiday_days_set": 6, "week_program2": "AQAAtAYAAMgIAADSDAAA0g4AANIRAADSFgAAyAAAAAABAAC0BgAAyAgAANIMAADSDgAA0hEAANIWAADIAAAAAAEAALQGAADICAAA0gwAANIOAADSEQAA0hYAAMgAAAAAAQAAtAYAAMgIAADSDAAA0g4AANIRAADSFgAAyAAAAAABAAC0BgAAyAgAANIMAADSDgAA0hEAANIWAADIAAAAAAEAALQGAADICAAA0gwAANIOAADSEQAA0hYAAMgAAAAAAQAAtAYAAMgIAADSDAAA0g4AANIRAADSFgAAyAAAAAA=", "factory_reset": true, "child_lock": false, "countdown_left": 0, "fault": 0, "temporary_time": 60, "total_time": 618, "temp_antifreezing": 140, "swing": 3, "time_period": 1, "electricity": 0, "curent_pro_time": "CAAMAAIDAgQ=", "heatcool_heat_cool": "hc_heat", "antifreezing_switch": true, "use_password": false, "true_off": false, "password": 0, "partial_key_lock": false }, "home_assistant": { "name": "NEVE PRO W", "name_by_user": null, "disabled": false, "disabled_by": null, "entities": [ { "disabled": false, "disabled_by": null, "entity_category": null, "device_class": null, "original_device_class": null, "icon": null, "original_icon": null, "unit_of_measurement": null, "state": { "entity_id": "climate.neve_pro_w", "state": "heat_cool", "attributes": { "hvac_modes": [ "off", "heat_cool", "heat_cool", "heat_cool" ], "min_temp": 0.5, "max_temp": 35.0, "target_temp_step": 0.1, "preset_modes": [ "holiday", "temporary" ], "swing_modes": [ "off", "on" ], "current_temperature": 21.2, "temperature": 21.4, "preset_mode": null, "swing_mode": "on", "friendly_name": "NEVE PRO W", "supported_features": 49 }, "last_changed": "2023-11-22T18:24:19.602658+00:00", "last_updated": "2023-11-28T08:47:32.838788+00:00" } } ] } } }

andrus2049 commented 4 months ago

See my solution:

https://github.com/tuya/tuya-smart-life/issues/34#issuecomment-1925722994

Taldir commented 4 months ago

I got the same problem with GTW06 WiFi.

hvac_modes:
  - "off"
  - heat_cool
  - heat_cool

I understand that this is not easy to fix, but right now it is more than annoying.

trustmeimlumi commented 4 months ago

My workaround at the moment is to create several automations in Tuya app to turn the thermostat on and off, which I then call it from Home Assistant automation. Unfortunately, when the thermostat is ON, the Home Assistant does not show that mode.

Santanachia commented 4 months ago

I gave up :( and bought RaspBee 2 and am using ZHA. Now it displays everything correctly, and using https://github.com/jacekk015/zha_quirks I can access everything there is access to from the TUYA app.

But... maybe you try to use some kind of overlay. e.g.: https://github.com/tetele/hvac_group/ ?

issue-triage-workflows[bot] commented 1 month ago

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

trustmeimlumi commented 1 month ago

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

Issue is still there

terra3110 commented 1 month ago

I found now the same Issue, as HVAC Modes are missing in HA that are seen in the Tuya App.