I have those dimmers: Zigbee Dimmer Switch RGB Backlight Adjustable - 2025 MODEL SAA APPROVE – Asthome Smart Electrical Supplies
When adding to ZHA they connect but have no identities for on/off, dimmer, etc.
Diag:
{
"home_assistant": {
"arch": "aarch64",
"dev": false,
"docker": true,
"hassio": true,
"installation_type": "Home Assistant OS",
"os_name": "Linux",
"os_version": "6.12.75-haos-raspi",
"python_version": "3.14.2",
"timezone": "Australia/Sydney",
"version": "2026.5.0",
"virtualenv": false,
"container_arch": "aarch64",
"supervisor": "2026.04.2",
"host_os": "Home Assistant OS 17.3",
"docker_version": "29.3.1",
"chassis": "embedded",
"run_as_root": true
},
"custom_components": {
"hacs": {
"documentation": "https://hacs.xyz/docs/use/",
"version": "2.0.5",
"requirements": [
"aiogithubapi>=22.10.1"
]
},
"home_connect_alt": {
"documentation": "https://github.com/ekutner/home-connect-hass",
"version": "1.3.6",
"requirements": [
"home-connect-async==0.8.5"
]
},
"presence_simulation": {
"documentation": "https://github.com/slashback100/presence_simulation",
"version": "5.1",
"requirements": []
},
"localtuya": {
"documentation": "https://github.com/rospogrigio/localtuya/",
"version": "5.2.3",
"requirements": []
},
"bureau_of_meteorology": {
"documentation": "https://github.com/bremor/bureau_of_meteorology",
"version": "1.3.5",
"requirements": [
"iso8601"
]
},
"patch_aionanoleaf": {
"documentation": null,
"version": "2025.09.21",
"requirements": []
},
"lunar_phase": {
"documentation": "https://github.com/ngocjohn/lunar-phase",
"version": "0.2.2",
"requirements": [
"ephem==4.1.6"
]
},
"govee_lan": {
"documentation": "https://github.com/wez/govee-lan-hass",
"version": "1.0.0",
"requirements": [
"govee-led-wez>=0.0.15"
]
},
"awtrix": {
"documentation": "https://github.com/MiguelAngelLV/ha-awtrix",
"version": "0.7.0",
"requirements": []
},
"battery_notes": {
"documentation": "https://andrew-codechimp.github.io/HA-Battery-Notes/",
"version": "3.4.5",
"requirements": []
}
},
"integration_manifest": {
"domain": "zha",
"name": "Zigbee Home Automation",
"after_dependencies": [
"hassio",
"onboarding",
"usb"
],
"codeowners": [
"dmulcahey",
"adminiuga",
"puddly",
"TheJulianJES"
],
"config_flow": true,
"dependencies": [
"file_upload",
"homeassistant_hardware"
],
"documentation": "https://www.home-assistant.io/integrations/zha",
"integration_type": "hub",
"iot_class": "local_polling",
"loggers": [
"aiosqlite",
"bellows",
"crccheck",
"pure_pcapy3",
"zhaquirks",
"zigpy",
"zigpy_deconz",
"zigpy_xbee",
"zigpy_zigate",
"zigpy_znp",
"zha",
"universal_silabs_flasher",
"serialx"
],
"requirements": [
"zha==1.3.0"
],
"usb": [
{
"description": "*2652*",
"known_devices": [
"slae.sh cc2652rb stick"
],
"pid": "EA60",
"vid": "10C4"
},
{
"description": "*slzb-07*",
"known_devices": [
"smlight slzb-07"
],
"pid": "EA60",
"vid": "10C4"
},
{
"description": "*sonoff*plus*",
"known_devices": [
"sonoff zigbee dongle plus v2"
],
"pid": "55D4",
"vid": "1A86"
},
{
"description": "*sonoff*plus*",
"known_devices": [
"sonoff zigbee dongle plus"
],
"pid": "EA60",
"vid": "10C4"
},
{
"description": "*tubeszb*",
"known_devices": [
"TubesZB Coordinator"
],
"pid": "EA60",
"vid": "10C4"
},
{
"description": "*tubeszb*",
"known_devices": [
"TubesZB Coordinator"
],
"pid": "7523",
"vid": "1A86"
},
{
"description": "*zigstar*",
"known_devices": [
"ZigStar Coordinators"
],
"pid": "7523",
"vid": "1A86"
},
{
"description": "*conbee*",
"known_devices": [
"Conbee II"
],
"pid": "0030",
"vid": "1CF1"
},
{
"description": "*conbee*",
"known_devices": [
"Conbee III"
],
"pid": "6015",
"vid": "0403"
},
{
"description": "*zigbee*",
"known_devices": [
"Nortek HUSBZB-1"
],
"pid": "8A2A",
"vid": "10C4"
},
{
"description": "*zigate*",
"known_devices": [
"ZiGate+"
],
"pid": "6015",
"vid": "0403"
},
{
"description": "*zigate*",
"known_devices": [
"ZiGate"
],
"pid": "EA60",
"vid": "10C4"
},
{
"description": "*bv 2010/10*",
"known_devices": [
"Bitron Video AV2010/10"
],
"pid": "8B34",
"vid": "10C4"
},
{
"description": "*sonoff*max*",
"known_devices": [
"SONOFF Dongle Max MG24"
],
"pid": "EA60",
"vid": "10C4"
},
{
"description": "*sonoff*lite*mg21*",
"known_devices": [
"sonoff zigbee dongle lite mg21"
],
"pid": "EA60",
"vid": "10C4"
}
],
"zeroconf": [
{
"name": "tube*",
"type": "_esphomelib._tcp.local."
},
{
"name": "*zigate*",
"type": "_zigate-zigbee-gateway._tcp.local."
},
{
"name": "*zigstar*",
"type": "_zigstar_gw._tcp.local."
},
{
"name": "uzg-01*",
"type": "_uzg-01._tcp.local."
},
{
"name": "slzb-06*",
"type": "_slzb-06._tcp.local."
},
{
"name": "xzg*",
"type": "_xzg._tcp.local."
},
{
"name": "czc*",
"type": "_czc._tcp.local."
},
{
"name": "*",
"type": "_zigbee-coordinator._tcp.local."
}
],
"is_built_in": true,
"overwrites_built_in": false
},
"setup_times": {
"null": {
"setup": 0.0001795560000346086
},
"d290d4d694e1199eac1aefb0e281c2b5": {
"wait_import_platforms": -0.07437576799998169,
"config_entry_setup": 21.39404456500006
}
},
"data": {
"version": 1,
"ieee": "**REDACTED**",
"nwk": "0x2A7F",
"manufacturer": "_TZE200_7iqgciln",
"model": "TS0601",
"friendly_manufacturer": "_TZE200_7iqgciln",
"friendly_model": "TS0601",
"name": "_TZE200_7iqgciln TS0601",
"quirk_applied": false,
"quirk_class": "zigpy.device.Device",
"exposes_features": [],
"manufacturer_code": 4417,
"power_source": "Mains",
"lqi": 164,
"rssi": -59,
"last_seen": "2026-05-07T05:18:34.055114+00:00",
"available": true,
"device_type": "Router",
"active_coordinator": false,
"node_descriptor": {
"logical_type": "Router",
"complex_descriptor_available": false,
"user_descriptor_available": false,
"reserved": 0,
"aps_flags": 0,
"frequency_band": 8,
"mac_capability_flags": 142,
"manufacturer_code": 4417,
"maximum_buffer_size": 66,
"maximum_incoming_transfer_size": 66,
"server_mask": 10752,
"maximum_outgoing_transfer_size": 66,
"descriptor_capability_field": 0
},
"endpoints": {
"1": {
"profile_id": 260,
"device_type": {
"name": "SMART_PLUG",
"id": 81
},
"in_clusters": [
{
"cluster_id": "0x0000",
"endpoint_attribute": "basic",
"attributes": [
{
"id": "0x0001",
"name": "app_version",
"zcl_type": "uint8",
"value": 65
},
{
"id": "0x0004",
"name": "manufacturer",
"zcl_type": "string",
"value": "_TZE200_7iqgciln"
},
{
"id": "0x0005",
"name": "model",
"zcl_type": "string",
"value": "TS0601"
}
]
},
{
"cluster_id": "0x0004",
"endpoint_attribute": "groups",
"attributes": []
},
{
"cluster_id": "0x0005",
"endpoint_attribute": "scenes",
"attributes": []
},
{
"cluster_id": "0xef00",
"endpoint_attribute": null,
"attributes": []
}
],
"out_clusters": [
{
"cluster_id": "0x000a",
"endpoint_attribute": "time",
"attributes": []
},
{
"cluster_id": "0x0019",
"endpoint_attribute": "ota",
"attributes": [
{
"id": "0x0002",
"name": "current_file_version",
"zcl_type": "uint32",
"value": 65
}
],
"last_query_cmd": {
"manufacturer_code": 4417,
"image_type": 54179,
"current_file_version": 65,
"hardware_version": null
}
}
]
},
"242": {
"profile_id": 41440,
"device_type": {
"name": "PROXY_BASIC",
"id": 97
},
"in_clusters": [],
"out_clusters": [
{
"cluster_id": "0x0021",
"endpoint_attribute": "green_power",
"attributes": []
}
]
}
},
"original_signature": {
"manufacturer": "_TZE200_7iqgciln",
"model": "TS0601",
"node_desc": {
"logical_type": 1,
"complex_descriptor_available": 0,
"user_descriptor_available": 0,
"reserved": 0,
"aps_flags": 0,
"frequency_band": 8,
"mac_capability_flags": 142,
"manufacturer_code": 4417,
"maximum_buffer_size": 66,
"maximum_incoming_transfer_size": 66,
"server_mask": 10752,
"maximum_outgoing_transfer_size": 66,
"descriptor_capability_field": 0
},
"endpoints": {
"1": {
"profile_id": "0x0104",
"device_type": "0x0051",
"input_clusters": [
"0x0004",
"0x0005",
"0xef00",
"0x0000"
],
"output_clusters": [
"0x0019",
"0x000a"
]
},
"242": {
"profile_id": "0xa1e0",
"device_type": "0x0061",
"input_clusters": [],
"output_clusters": [
"0x0021"
]
}
}
},
"zha_lib_entities": {
"sensor": [
{
"info_object": {
"fallback_name": null,
"unique_id": "**REDACTED**",
"migrate_unique_ids": [],
"platform": "sensor",
"class_name": "LQISensor",
"translation_key": "lqi",
"translation_placeholders": null,
"device_class": null,
"state_class": "measurement",
"entity_category": "diagnostic",
"entity_registry_enabled_default": false,
"enabled": true,
"primary": false,
"cluster_handlers": [
{
"class_name": "BasicClusterHandler",
"generic_id": "cluster_handler_0x0000",
"endpoint_id": 1,
"cluster": {
"id": 0,
"name": "Basic",
"type": "server"
},
"id": "1:0x0000",
"unique_id": "**REDACTED**",
"status": "INITIALIZED",
"value_attribute": null
}
],
"device_ieee": "**REDACTED**",
"endpoint_id": 1,
"available": true,
"group_id": null,
"suggested_display_precision": null,
"unit": null
},
"state": {
"class_name": "LQISensor",
"available": true,
"state": 164
}
},
{
"info_object": {
"fallback_name": null,
"unique_id": "**REDACTED**",
"migrate_unique_ids": [],
"platform": "sensor",
"class_name": "RSSISensor",
"translation_key": "rssi",
"translation_placeholders": null,
"device_class": "signal_strength",
"state_class": "measurement",
"entity_category": "diagnostic",
"entity_registry_enabled_default": false,
"enabled": true,
"primary": false,
"cluster_handlers": [
{
"class_name": "BasicClusterHandler",
"generic_id": "cluster_handler_0x0000",
"endpoint_id": 1,
"cluster": {
"id": 0,
"name": "Basic",
"type": "server"
},
"id": "1:0x0000",
"unique_id": "**REDACTED**",
"status": "INITIALIZED",
"value_attribute": null
}
],
"device_ieee": "**REDACTED**",
"endpoint_id": 1,
"available": true,
"group_id": null,
"suggested_display_precision": null,
"unit": "dBm"
},
"state": {
"class_name": "RSSISensor",
"available": true,
"state": -59
}
}
],
"update": [
{
"info_object": {
"fallback_name": null,
"unique_id": "**REDACTED**",
"migrate_unique_ids": [],
"platform": "update",
"class_name": "FirmwareUpdateEntity",
"translation_key": null,
"translation_placeholders": null,
"device_class": "firmware",
"state_class": null,
"entity_category": "config",
"entity_registry_enabled_default": true,
"enabled": true,
"primary": false,
"cluster_handlers": [
{
"class_name": "OtaClientClusterHandler",
"generic_id": "cluster_handler_0x0019_client",
"endpoint_id": 1,
"cluster": {
"id": 25,
"name": "Ota",
"type": "client"
},
"id": "1:0x0019_client",
"unique_id": "**REDACTED**",
"status": "INITIALIZED",
"value_attribute": null
}
],
"device_ieee": "**REDACTED**",
"endpoint_id": 1,
"available": true,
"group_id": null,
"supported_features": 7
},
"state": {
"class_name": "FirmwareUpdateEntity",
"available": true,
"installed_version": "0x00000041",
"in_progress": false,
"update_percentage": null,
"latest_version": null,
"release_summary": null,
"release_notes": null,
"release_url": null
}
}
]
},
"neighbors": [],
"routes": []
},
"issues": []
}
I found out that this would need a custom quirk. I already have a custom quirk setup for another device.
I went ahead and took the following file: zha-device-handlers/zhaquirks/tuya/ts0601_dimmer.py at 69bdc1564abbfae2ec1cf086d425fbfe41b7283c · zigpy/zha-device-handlers · GitHub
added the model in question to the signature section - restarted, etc.
after that, depending on where I add the signature, switches show up, but don't actually do anything
I am not very familiar with setting up custom quirks, so question:
How can I make the device work with ZHA (not going to other Zigbee integrations) by using a correctly working custom quirk, until it the device may or may not be supported. (I already opened a device add request ([Device Support Request] _TZE200_7iqgciln MG-AUDIM02ZLP-XX · Issue #4979 · zigpy/zha-device-handlers · GitHub)