zigpy / zha-device-handlers

ZHA device handlers bridge the functionality gap created when manufacturers deviate from the ZCL specification, handling deviations and exceptions by parsing custom messages to and from Zigbee devices.
Apache License 2.0
772 stars 702 forks source link

[BUG] TS110E by _TZ3210_3mpwqzuu | 2 gang dimmer #3093

Open miit86 opened 7 months ago

miit86 commented 7 months ago

Bug description

Using ZHA.

Problems that occur.

  1. Device (automatically) turns on light but not the state. Reproduced when I Read the 0x0006 (cluster) and the 0x0000 (atrribute) when i change the value to "false" the "automatically on" problem is gone.
  2. Device (automatically) turns off the state but not the lights.
  3. When turning on with brightness from automation the state is good, but the lights stay off. when changing the brightness with the slider the lights go on.
  4. gui state is sometimes not correct with real state

Steps to reproduce

by just using it.

Expected behavior

  1. gui state and real state should be the same
  2. when using turn_on with brightness. it should turn on with the brightness

Screenshots/Video

Screenshots/Video [Paste/upload your media here]

Device signature

Device signature ```json { "node_descriptor": "NodeDescriptor(logical_type=, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=, mac_capability_flags=, manufacturer_code=4417, maximum_buffer_size=66, maximum_incoming_transfer_size=66, server_mask=10752, maximum_outgoing_transfer_size=66, descriptor_capability_field=, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)", "endpoints": { "1": { "profile_id": "0x0104", "device_type": "0x0101", "input_clusters": [ "0x0000", "0x0003", "0x0004", "0x0005", "0x0006", "0x0008", "0xef00" ], "output_clusters": [ "0x000a", "0x0019" ] }, "2": { "profile_id": "0x0104", "device_type": "0x0101", "input_clusters": [ "0x0003", "0x0004", "0x0005", "0x0006", "0x0008", "0xef00" ], "output_clusters": [] }, "242": { "profile_id": "0xa1e0", "device_type": "0x0061", "input_clusters": [], "output_clusters": [ "0x0021" ] } }, "manufacturer": "_TZ3210_3mpwqzuu", "model": "TS110E", "class": "zigpy.device.Device" } ```

Diagnostic information

Diagnostic information ```json { "home_assistant": { "installation_type": "Home Assistant OS", "version": "2024.4.1", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.12.2", "docker": true, "arch": "x86_64", "timezone": "Europe/Amsterdam", "os_name": "Linux", "os_version": "6.6.20-haos", "supervisor": "2024.04.0", "host_os": "Home Assistant OS 12.1", "docker_version": "24.0.7", "chassis": "vm", "run_as_root": true }, "custom_components": { "alarmo": { "version": "v1.9.15", "requirements": [] }, "webrtc": { "version": "v3.5.1", "requirements": [] }, "spotcast": { "version": "v3.6.30", "requirements": [] }, "switch_manager": { "version": "1.3.3", "requirements": [] }, "afvalwijzer": { "version": "2024.01.06", "requirements": [] }, "neerslag": { "version": "2022.07.07.1", "requirements": [] }, "media_player_template": { "version": "1.0.0", "requirements": [] }, "hass_agent": { "version": "2022.11.9", "requirements": [] }, "powercalc": { "version": "v1.11.5", "requirements": [ "numpy>=1.21.1" ] }, "ics_calendar": { "version": "4.2.0", "requirements": [ "ics>=0.7.2", "recurring_ical_events>=2.0.2", "icalendar>=5.0.4" ] }, "samsungtv_smart": { "version": "0.13.4", "requirements": [ "websocket-client!=1.4.0,>=0.58.0", "wakeonlan>=2.0.0", "aiofiles>=0.8.0", "casttube>=0.2.1" ] }, "tgtg": { "version": "5.4.2", "requirements": [ "tgtg==0.16.1" ] }, "lghorizon": { "version": "0.5.9", "requirements": [ "lghorizon>=0.6.11" ] }, "grott": { "version": "1.1.0", "requirements": [] }, "hacs": { "version": "1.34.0", "requirements": [ "aiogithubapi>=22.10.1" ] } }, "integration_manifest": { "domain": "zha", "name": "Zigbee Home Automation", "after_dependencies": [ "onboarding", "usb" ], "codeowners": [ "@dmulcahey", "@adminiuga", "@puddly", "@TheJulianJES" ], "config_flow": true, "dependencies": [ "file_upload" ], "documentation": "https://www.home-assistant.io/integrations/zha", "iot_class": "local_polling", "loggers": [ "aiosqlite", "bellows", "crccheck", "pure_pcapy3", "zhaquirks", "zigpy", "zigpy_deconz", "zigpy_xbee", "zigpy_zigate", "zigpy_znp", "universal_silabs_flasher" ], "requirements": [ "bellows==0.38.1", "pyserial==3.5", "pyserial-asyncio==0.6", "zha-quirks==0.0.113", "zigpy-deconz==0.23.1", "zigpy==0.63.5", "zigpy-xbee==0.20.1", "zigpy-zigate==0.12.0", "zigpy-znp==0.12.1", "universal-silabs-flasher==0.0.18", "pyserial-asyncio-fast==0.11" ], "usb": [ { "vid": "10C4", "pid": "EA60", "description": "*2652*", "known_devices": [ "slae.sh cc2652rb stick" ] }, { "vid": "10C4", "pid": "EA60", "description": "*slzb-07*", "known_devices": [ "smlight slzb-07" ] }, { "vid": "1A86", "pid": "55D4", "description": "*sonoff*plus*", "known_devices": [ "sonoff zigbee dongle plus v2" ] }, { "vid": "10C4", "pid": "EA60", "description": "*sonoff*plus*", "known_devices": [ "sonoff zigbee dongle plus" ] }, { "vid": "10C4", "pid": "EA60", "description": "*tubeszb*", "known_devices": [ "TubesZB Coordinator" ] }, { "vid": "1A86", "pid": "7523", "description": "*tubeszb*", "known_devices": [ "TubesZB Coordinator" ] }, { "vid": "1A86", "pid": "7523", "description": "*zigstar*", "known_devices": [ "ZigStar Coordinators" ] }, { "vid": "1CF1", "pid": "0030", "description": "*conbee*", "known_devices": [ "Conbee II" ] }, { "vid": "0403", "pid": "6015", "description": "*conbee*", "known_devices": [ "Conbee III" ] }, { "vid": "10C4", "pid": "8A2A", "description": "*zigbee*", "known_devices": [ "Nortek HUSBZB-1" ] }, { "vid": "0403", "pid": "6015", "description": "*zigate*", "known_devices": [ "ZiGate+" ] }, { "vid": "10C4", "pid": "EA60", "description": "*zigate*", "known_devices": [ "ZiGate" ] }, { "vid": "10C4", "pid": "8B34", "description": "*bv 2010/10*", "known_devices": [ "Bitron Video AV2010/10" ] } ], "zeroconf": [ { "type": "_esphomelib._tcp.local.", "name": "tube*" }, { "type": "_zigate-zigbee-gateway._tcp.local.", "name": "*zigate*" }, { "type": "_zigstar_gw._tcp.local.", "name": "*zigstar*" }, { "type": "_uzg-01._tcp.local.", "name": "uzg-01*" }, { "type": "_slzb-06._tcp.local.", "name": "slzb-06*" } ], "is_built_in": true }, "data": { "ieee": "**REDACTED**", "nwk": 27658, "manufacturer": "_TZ3210_3mpwqzuu", "model": "TS110E", "name": "_TZ3210_3mpwqzuu TS110E", "quirk_applied": false, "quirk_class": "zigpy.device.Device", "quirk_id": null, "manufacturer_code": 4417, "power_source": "Mains", "lqi": 109, "rssi": null, "last_seen": "2024-04-08T11:22:48", "available": true, "device_type": "Router", "signature": { "node_descriptor": "NodeDescriptor(logical_type=, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=, mac_capability_flags=, manufacturer_code=4417, maximum_buffer_size=66, maximum_incoming_transfer_size=66, server_mask=10752, maximum_outgoing_transfer_size=66, descriptor_capability_field=, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)", "endpoints": { "1": { "profile_id": "0x0104", "device_type": "0x0101", "input_clusters": [ "0x0000", "0x0003", "0x0004", "0x0005", "0x0006", "0x0008", "0xef00" ], "output_clusters": [ "0x000a", "0x0019" ] }, "2": { "profile_id": "0x0104", "device_type": "0x0101", "input_clusters": [ "0x0003", "0x0004", "0x0005", "0x0006", "0x0008", "0xef00" ], "output_clusters": [] }, "242": { "profile_id": "0xa1e0", "device_type": "0x0061", "input_clusters": [], "output_clusters": [ "0x0021" ] } }, "manufacturer": "_TZ3210_3mpwqzuu", "model": "TS110E" }, "active_coordinator": false, "entities": [ { "entity_id": "button.dimmer_keuken_identify", "name": "_TZ3210_3mpwqzuu TS110E" }, { "entity_id": "light.dimmer_keuken_light", "name": "_TZ3210_3mpwqzuu TS110E" }, { "entity_id": "light.dimmer_kookplaat", "name": "_TZ3210_3mpwqzuu TS110E" }, { "entity_id": "update.dimmer_keuken_firmware", "name": "_TZ3210_3mpwqzuu TS110E" } ], "neighbors": [ { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Parent", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0x3326", "permit_joining": "Unknown", "depth": "1", "lqi": "42" }, { "device_type": "Coordinator", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0x0000", "permit_joining": "Unknown", "depth": "0", "lqi": "30" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0x9A7B", "permit_joining": "Unknown", "depth": "1", "lqi": "94" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0xBDD8", "permit_joining": "Unknown", "depth": "3", "lqi": "78" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0x7BD1", "permit_joining": "Unknown", "depth": "1", "lqi": "51" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0xD45E", "permit_joining": "Unknown", "depth": "1", "lqi": "27" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0xB3CA", "permit_joining": "Unknown", "depth": "1", "lqi": "18" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0x6238", "permit_joining": "Unknown", "depth": "2", "lqi": "103" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0x683B", "permit_joining": "Unknown", "depth": "2", "lqi": "0" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0xF6C5", "permit_joining": "Unknown", "depth": "1", "lqi": "24" }, { "device_type": "Router", "rx_on_when_idle": "On", "relationship": "Sibling", "extended_pan_id": "**REDACTED**", "ieee": "**REDACTED**", "nwk": "0x80E8", "permit_joining": "Unknown", "depth": "2", "lqi": "154" } ], "routes": [], "endpoint_names": [ { "name": "DIMMABLE_LIGHT" }, { "name": "DIMMABLE_LIGHT" }, { "name": "PROXY_BASIC" } ], "user_given_name": "Dimmer Keuken", "device_reg_id": "ffa460be3c223c37ece668e7ceb7c573", "area_id": "f1a1d422874f43caa089b6bf33791ae7", "cluster_details": { "1": { "device_type": { "name": "DIMMABLE_LIGHT", "id": 257 }, "profile_id": 260, "in_clusters": { "0x0004": { "endpoint_attribute": "groups", "attributes": {}, "unsupported_attributes": {} }, "0x0005": { "endpoint_attribute": "scenes", "attributes": {}, "unsupported_attributes": {} }, "0x0003": { "endpoint_attribute": "identify", "attributes": {}, "unsupported_attributes": {} }, "0x0006": { "endpoint_attribute": "on_off", "attributes": { "0x0000": { "attribute_name": "on_off", "value": 0 }, "0x4001": { "attribute_name": "on_time", "value": 0 } }, "unsupported_attributes": { "0x4001": { "attribute_name": "on_time" }, "0x4003": { "attribute_name": "start_up_on_off" }, "0xfffe": { "attribute_name": "reporting_status" } } }, "0x0008": { "endpoint_attribute": "level", "attributes": { "0x0000": { "attribute_name": "current_level", "value": 255 } }, "unsupported_attributes": { "0x4000": { "attribute_name": "start_up_current_level" }, "0x0003": { "attribute_name": "max_level" }, "0x0005": { "attribute_name": "min_frequency" }, "0x0006": { "attribute_name": "max_frequency" }, "0x0010": { "attribute_name": "on_off_transition_time" }, "0xfffd": { "attribute_name": "cluster_revision" }, "0x000f": { "attribute_name": "options" }, "0x0011": { "attribute_name": "on_level" }, "0x0012": { "attribute_name": "on_transition_time" }, "0x0013": { "attribute_name": "off_transition_time" }, "0x0014": { "attribute_name": "default_move_rate" }, "0xfffe": { "attribute_name": "reporting_status" } } }, "0xef00": { "endpoint_attribute": null, "attributes": {}, "unsupported_attributes": {} }, "0x0000": { "endpoint_attribute": "basic", "attributes": { "0x0004": { "attribute_name": "manufacturer", "value": "_TZ3210_3mpwqzuu" }, "0x0005": { "attribute_name": "model", "value": "TS110E" } }, "unsupported_attributes": {} } }, "out_clusters": { "0x0019": { "endpoint_attribute": "ota", "attributes": { "0x0002": { "attribute_name": "current_file_version", "value": 64 } }, "unsupported_attributes": {} }, "0x000a": { "endpoint_attribute": "time", "attributes": {}, "unsupported_attributes": {} } } }, "2": { "device_type": { "name": "DIMMABLE_LIGHT", "id": 257 }, "profile_id": 260, "in_clusters": { "0x0004": { "endpoint_attribute": "groups", "attributes": {}, "unsupported_attributes": {} }, "0x0005": { "endpoint_attribute": "scenes", "attributes": {}, "unsupported_attributes": {} }, "0x0003": { "endpoint_attribute": "identify", "attributes": {}, "unsupported_attributes": {} }, "0x0006": { "endpoint_attribute": "on_off", "attributes": { "0x0000": { "attribute_name": "on_off", "value": 0 }, "0x4001": { "attribute_name": "on_time", "value": 0 } }, "unsupported_attributes": { "0x4003": { "attribute_name": "start_up_on_off" } } }, "0x0008": { "endpoint_attribute": "level", "attributes": { "0x0000": { "attribute_name": "current_level", "value": 255 } }, "unsupported_attributes": { "0x4000": { "attribute_name": "start_up_current_level" }, "0x0011": { "attribute_name": "on_level" }, "0x0010": { "attribute_name": "on_off_transition_time" }, "0x0012": { "attribute_name": "on_transition_time" }, "0x0013": { "attribute_name": "off_transition_time" }, "0x0014": { "attribute_name": "default_move_rate" } } }, "0xef00": { "endpoint_attribute": null, "attributes": {}, "unsupported_attributes": {} } }, "out_clusters": {} }, "242": { "device_type": { "name": "PROXY_BASIC", "id": 97 }, "profile_id": 41440, "in_clusters": {}, "out_clusters": { "0x0021": { "endpoint_attribute": "green_power", "attributes": {}, "unsupported_attributes": {} } } } } } } ```

Logs

Logs ```python [Paste the logs here] ```

Additional information

No response

elimo2401 commented 7 months ago

+1 Any update here?

github-actions[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 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.

iroger commented 1 month ago

I have the same issue with TS110E by _TZ3210_3mpwqzuu

GUI state changes to ON while light stays off

Henrik1986 commented 2 days ago

My device also switch randomly to "on" in the GUI . The bulb itself dosen't turn on. If the bulb is "on" in the GUI I can turn on the bulb on the wall-switch. It's just one of the channels that has this behavior. The other channels is off/on in the GUI when it should show as off/on.

TS110E _TZ3210_3mpwqzuu Firmware: 0x00000040

The logg shows this.

2024-11-26 21:52:07.621 DEBUG (MainThread) [zha.zigbee.device] [0x7DC5](TS110E): Device seen - marking the device available and resetting counter
2024-11-26 21:52:07.621 DEBUG (MainThread) [zha.zigbee.device] [0x7DC5](TS110E): Update device availability -  device available: True - new availability: True - changed: False
Henrik1986 commented 1 day ago

I found a "solution" to my problem on home Assistant community.

https://community.home-assistant.io/t/light-ts110e-zigbee-device-status-is-changing-while-device-stays-off/702420