Describe the bug
Controls for my vacuum cleaner stopped working since latest HA 2026.1 updates.
I've re-synched the account, same issue. Before re-synching I used to see the controls but they were disabled, but after the new sync, they aren't even here.
home-assistant/home-assistant.io#43344
Expected behavior
It used to work fine before the update
Diagnostics for integrations and devices
{
"home_assistant": {
"installation_type": "Home Assistant OS",
"version": "2026.1.3",
"dev": false,
"hassio": true,
"virtualenv": false,
"python_version": "3.13.11",
"docker": true,
"arch": "aarch64",
"timezone": "Europe/Madrid",
"os_name": "Linux",
"os_version": "6.12.47-haos-raspi",
"container_arch": "aarch64",
"supervisor": "2026.01.1",
"host_os": "Home Assistant OS 17.0",
"docker_version": "29.1.3",
"chassis": "embedded",
"run_as_root": true
},
"custom_components": {
"ariston": {
"documentation": "https://github.com/fustom/ariston-remotethermo-home-assistant-v3",
"version": "0.19.9",
"requirements": [
"ariston==0.19.9"
]
},
"hacs": {
"documentation": "https://hacs.xyz/docs/use/",
"version": "2.0.5",
"requirements": [
"aiogithubapi>=22.10.1"
]
}
},
"integration_manifest": {
"domain": "tuya",
"name": "Tuya",
"codeowners": [
"Tuya",
"zlinoliver"
],
"config_flow": true,
"dependencies": [
"ffmpeg"
],
"dhcp": [
{
"..."
}
],
"documentation": "https://www.home-assistant.io/integrations/tuya",
"integration_type": "hub",
"iot_class": "cloud_push",
"loggers": [
"tuya_sharing"
],
"requirements": [
"tuya-device-sharing-sdk==0.2.7"
],
"is_built_in": true,
"overwrites_built_in": false
},
"setup_times": {
"null": {
"setup": 3.48889734596014e-05
},
"01KGBS4WX1DSHQTTFTQCR063GJ": {
"wait_import_platforms": -0.0887518300442025,
"wait_base_component": -0.0009479860309511423,
"config_entry_setup": 0.7573336710920557
}
},
"data": {
"endpoint": "https://apigw.tuyaeu.com",
"terminal_id": "1769921999592dPXaCW",
"mqtt_connected": true,
"disabled_by": null,
"disabled_polling": false,
"devices": [
{
"id": "bf31198fb6c0e6ecd0artv",
"name": "Aspirador Jonny",
"category": "sd",
"product_id": "kixj2uvxfv0toepz",
"product_name": "SMARTAI S7 MAX",
"online": true,
"sub": false,
"time_zone": "+02:00",
"active_time": "2025-04-23T09:17:29+00:00",
"create_time": "2025-04-23T09:17:29+00:00",
"update_time": "2025-04-23T09:17:29+00:00",
"function": {
"power_go": {
"type": "Boolean",
"value": "{}"
},
"pause": {
"type": "Boolean",
"value": "{}"
},
"switch_charge": {
"type": "Boolean",
"value": "{}"
},
"mode": {
"type": "Enum",
"value": "{\"range\":[\"smart\",\"chargego\",\"zone\",\"pose\",\"part\"],\"type\":\"enum\"}"
},
"seek": {
"type": "Boolean",
"value": "{}"
}
},
"status_range": {
"power_go": {
"type": "Boolean",
"value": "{}"
},
"pause": {
"type": "Boolean",
"value": "{}"
},
"switch_charge": {
"type": "Boolean",
"value": "{}"
},
"mode": {
"type": "Enum",
"value": "{\"range\":[\"smart\",\"chargego\",\"zone\",\"pose\",\"part\"],\"type\":\"enum\"}"
},
"seek": {
"type": "Boolean",
"value": "{}"
}
},
"status": {
"power_go": true,
"pause": false,
"switch_charge": true,
"mode": "chargego",
"seek": false
},
"home_assistant": {
"name": "Aspirador Jonny",
"name_by_user": null,
"disabled": false,
"disabled_by": null,
"entities": []
},
"set_up": false,
"support_local": true,
"local_strategy": {
"1": {
"value_convert": "default",
"status_code": "power_go",
"config_item": {
"statusFormat": "{\"power_go\":\"$\"}",
"valueDesc": "{}",
"valueType": "Boolean",
"enumMappingMap": {},
"pid": "kixj2uvxfv0toepz"
}
},
"2": {
"value_convert": "default",
"status_code": "pause",
"config_item": {
"statusFormat": "{\"pause\":\"$\"}",
"valueDesc": "{}",
"valueType": "Boolean",
"enumMappingMap": {},
"pid": "kixj2uvxfv0toepz"
}
},
"3": {
"value_convert": "default",
"status_code": "switch_charge",
"config_item": {
"statusFormat": "{\"switch_charge\":\"$\"}",
"valueDesc": "{}",
"valueType": "Boolean",
"enumMappingMap": {},
"pid": "kixj2uvxfv0toepz"
}
},
"4": {
"value_convert": "default",
"status_code": "mode",
"config_item": {
"statusFormat": "{\"mode\":\"$\"}",
"valueDesc": "{\"range\":[\"smart\",\"chargego\",\"zone\",\"pose\",\"part\"],\"type\":\"enum\"}",
"valueType": "Enum",
"enumMappingMap": {},
"pid": "kixj2uvxfv0toepz"
}
},
"11": {
"value_convert": "default",
"status_code": "seek",
"config_item": {
"statusFormat": "{\"seek\":\"$\"}",
"valueDesc": "{}",
"valueType": "Boolean",
"enumMappingMap": {},
"pid": "kixj2uvxfv0toepz"
}
}
},
"warnings": null
}
]
},
"issues": []
}
Home Assistant Version
2026.1.2
2026.1.3
Device info (please complete the following information, which can be found in log):
WIP
Device specifications (please complete the following information, which can be found in log):
WIP
Additional context
I can see this error log occured when re-synching the account:
�[31m2026-02-01 00:33:01.408 ERROR (MainThread) [homeassistant.components.select] Error while setting up tuya platform for select: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 459, in _async_setup_platform
await asyncio.shield(awaitable)
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 381, in async_setup_entry
async_discover_device([*manager.device_map])
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 367, in async_discover_device
entities.extend(
~~~~~~~~~~~~~~~^
TuyaSelectEntity(
^^^^^^^^^^^^^^^^^
...<7 lines>...
)
^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 373, in <genexpr>
dpcode_wrapper := DPCodeEnumWrapper.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
device, description.key, prefer_function=True
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/models.py", line 100, in find_dpcode
if type_information := cls._DPTYPE.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~^
device, dpcodes, prefer_function=prefer_function
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
):
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 88, in find_dpcode
type_information := cls._from_json(
~~~~~~~~~~~~~~^
dpcode=dpcode, type_data=current_definition.values
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 184, in _from_json
return cls(
dpcode=dpcode,
type_data=type_data,
**cast(dict[str, list[str]], parsed),
)
TypeError: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'�[0m
�[31m2026-02-01 00:33:01.421 ERROR (MainThread) [homeassistant.components.vacuum] Error while setting up tuya platform for vacuum: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 459, in _async_setup_platform
await asyncio.shield(awaitable)
File "/usr/src/homeassistant/homeassistant/components/tuya/vacuum.py", line 95, in async_setup_entry
async_discover_device([*manager.device_map])
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/tuya/vacuum.py", line 79, in async_discover_device
mode_wrapper=DPCodeEnumWrapper.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
device, DPCode.MODE, prefer_function=True
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
),
^
File "/usr/src/homeassistant/homeassistant/components/tuya/models.py", line 100, in find_dpcode
if type_information := cls._DPTYPE.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~^
device, dpcodes, prefer_function=prefer_function
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
):
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 88, in find_dpcode
type_information := cls._from_json(
~~~~~~~~~~~~~~^
dpcode=dpcode, type_data=current_definition.values
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 184, in _from_json
return cls(
dpcode=dpcode,
type_data=type_data,
**cast(dict[str, list[str]], parsed),
)
TypeError: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'�[0m
�[31m2026-02-01 00:33:01.428 ERROR (MainThread) [homeassistant.components.select] Error while setting up tuya platform for select: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 459, in _async_setup_platform
await asyncio.shield(awaitable)
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 381, in async_setup_entry
async_discover_device([*manager.device_map])
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 367, in async_discover_device
entities.extend(
~~~~~~~~~~~~~~~^
TuyaSelectEntity(
^^^^^^^^^^^^^^^^^
...<7 lines>...
)
^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 373, in <genexpr>
dpcode_wrapper := DPCodeEnumWrapper.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
device, description.key, prefer_function=True
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/models.py", line 100, in find_dpcode
if type_information := cls._DPTYPE.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~^
device, dpcodes, prefer_function=prefer_function
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
):
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 88, in find_dpcode
type_information := cls._from_json(
~~~~~~~~~~~~~~^
dpcode=dpcode, type_data=current_definition.values
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 184, in _from_json
return cls(
dpcode=dpcode,
type_data=type_data,
**cast(dict[str, list[str]], parsed),
)
TypeError: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'�[0m
�[31m2026-02-01 00:33:01.434 ERROR (MainThread) [homeassistant.components.sensor] Platform tuya does not generate unique IDs. ID tuya.bfc2d40be5df447b2b8op1add_ele already exists - ignoring sensor.enchufe_wifi_total_energy�[0m
�[31m2026-02-01 00:33:01.435 ERROR (MainThread) [homeassistant.components.switch] Platform tuya does not generate unique IDs. ID tuya.bfc2d40be5df447b2b8op1switch_1 already exists - ignoring switch.enchufe_wifi_socket_1�[0m
�[31m2026-02-01 00:33:01.435 ERROR (MainThread) [homeassistant.components.vacuum] Error while setting up tuya platform for vacuum: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 459, in _async_setup_platform
await asyncio.shield(awaitable)
File "/usr/src/homeassistant/homeassistant/components/tuya/vacuum.py", line 95, in async_setup_entry
async_discover_device([*manager.device_map])
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/tuya/vacuum.py", line 79, in async_discover_device
mode_wrapper=DPCodeEnumWrapper.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
device, DPCode.MODE, prefer_function=True
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
),
^
File "/usr/src/homeassistant/homeassistant/components/tuya/models.py", line 100, in find_dpcode
if type_information := cls._DPTYPE.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~^
device, dpcodes, prefer_function=prefer_function
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
):
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 88, in find_dpcode
type_information := cls._from_json(
~~~~~~~~~~~~~~^
dpcode=dpcode, type_data=current_definition.values
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 184, in _from_json
return cls(
dpcode=dpcode,
type_data=type_data,
**cast(dict[str, list[str]], parsed),
)
TypeError: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'�[0m
�[31m2026-02-01 05:54:16.072 ERROR (MainThread) [homeassistant.components.select] Error while setting up tuya platform for select: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 459, in _async_setup_platform
await asyncio.shield(awaitable)
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 381, in async_setup_entry
async_discover_device([*manager.device_map])
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 367, in async_discover_device
entities.extend(
~~~~~~~~~~~~~~~^
TuyaSelectEntity(
^^^^^^^^^^^^^^^^^
...<7 lines>...
)
^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/select.py", line 373, in <genexpr>
dpcode_wrapper := DPCodeEnumWrapper.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
device, description.key, prefer_function=True
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/models.py", line 100, in find_dpcode
if type_information := cls._DPTYPE.find_dpcode(
~~~~~~~~~~~~~~~~~~~~~~~^
device, dpcodes, prefer_function=prefer_function
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
):
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 88, in find_dpcode
type_information := cls._from_json(
~~~~~~~~~~~~~~^
dpcode=dpcode, type_data=current_definition.values
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/tuya/type_information.py", line 184, in _from_json
return cls(
dpcode=dpcode,
type_data=type_data,
**cast(dict[str, list[str]], parsed),
)
TypeError: EnumTypeInformation.__init__() got an unexpected keyword argument 'type'
Describe the bug
Controls for my vacuum cleaner stopped working since latest HA 2026.1 updates.
I've re-synched the account, same issue. Before re-synching I used to see the controls but they were disabled, but after the new sync, they aren't even here.
home-assistant/home-assistant.io#43344
Expected behavior
It used to work fine before the update
Diagnostics for integrations and devices
Home Assistant Version
2026.1.2
2026.1.3
Device info (please complete the following information, which can be found in log):
WIP
Device specifications (please complete the following information, which can be found in log):
WIP
Additional context
I can see this error log occured when re-synching the account: