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
717 stars 665 forks source link

[Device Support Request] Iris Security Keypad (v3) Model: iL02_1 #2932

Closed consolecwby closed 1 month ago

consolecwby commented 7 months ago

Problem description

I have this device in Hubitat and it reports the following states: Current States alarm : off armingIn : 0 battery : 100 codeChanged : added codeLength : 4 lastCodeName : code #1 lockCodes : {"1":{"name":"code #1","code":"2217"}} maxCodes : 20 motion : inactive securityKeypad : disarmed tamper : clear temperature : 76.82

On Home assistant using default setup the device only gives the following: Controls: Alarm control panel Disarmed Sensors: Humidity: 30.8 % IAS zone: Off Temperature: 78.1 °F Diagnostic Battery: Unknown Identify LQI RSSI

Solution description

Would like to be able to control pin input, Battery status worked, control arming delay time and other features: would like to be able to sync with alarmo

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=4667, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)", "endpoints": { "1": { "profile_id": "0x0104", "device_type": "0x0402", "input_clusters": [ "0x0000", "0x0001", "0x0003", "0x0020", "0x0402", "0x0405", "0x0500", "0x0501", "0x0b05", "0xfc01", "0xfc02" ], "output_clusters": [ "0x0003", "0x0019", "0x0501" ] } }, "manufacturer": "iMagic by GreatStar", "model": "1112-S", "class": "zigpy.device.Device" } ```

Diagnostic information

Diagnostic information ```json { "home_assistant": { "installation_type": "Home Assistant OS", "version": "2024.1.5", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.11.6", "docker": true, "arch": "x86_64", "timezone": "America/Chicago", "os_name": "Linux", "os_version": "6.1.71-haos", "supervisor": "2023.12.1", "host_os": "Home Assistant OS 11.4", "docker_version": "24.0.7", "chassis": "embedded", "run_as_root": true }, "custom_components": { "zha_toolkit": { "version": "v1.1.8", "requirements": [ "pytz" ] }, "ics_calendar": { "version": "3.1.8", "requirements": [ "ics>=0.7.2", "recurring_ical_events>=2.0.2", "icalendar>=5.0.4" ] }, "hubitat": { "version": "0.9.21", "requirements": [] }, "hacs": { "version": "1.34.0", "requirements": [ "aiogithubapi>=22.10.1" ] }, "sonos_cloud": { "version": "0.3.5", "requirements": [] }, "alarmo": { "version": "v1.9.14", "requirements": [] }, "frigate": { "version": "4.0.1", "requirements": [ "pytz==2022.7" ] }, "emporia_vue": { "version": "0.8.3", "requirements": [ "pyemvue==0.17.1" ] }, "noonlight": { "version": "1.0.2", "requirements": [ "noonlight==0.1.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.37.6", "pyserial==3.5", "pyserial-asyncio==0.6", "zha-quirks==0.0.109", "zigpy-deconz==0.22.4", "zigpy==0.60.6", "zigpy-xbee==0.20.1", "zigpy-zigate==0.12.0", "zigpy-znp==0.12.1", "universal-silabs-flasher==0.0.15", "pyserial-asyncio-fast==0.11" ], "usb": [ { "vid": "10C4", "pid": "EA60", "description": "*2652*", "known_devices": [ "slae.sh cc2652rb stick" ] }, { "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": 17486, "manufacturer": "iMagic by GreatStar", "model": "1112-S", "name": "iMagic by GreatStar 1112-S", "quirk_applied": false, "quirk_class": "zigpy.device.Device", "quirk_id": null, "manufacturer_code": 4667, "power_source": "Battery or Unknown", "lqi": 248, "rssi": -38, "last_seen": "2024-01-22T16:11:48", "available": true, "device_type": "EndDevice", "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=4667, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)", "endpoints": { "1": { "profile_id": "0x0104", "device_type": "0x0402", "input_clusters": [ "0x0000", "0x0001", "0x0003", "0x0020", "0x0402", "0x0405", "0x0500", "0x0501", "0x0b05", "0xfc01", "0xfc02" ], "output_clusters": [ "0x0003", "0x0019", "0x0501" ] } }, "manufacturer": "iMagic by GreatStar", "model": "1112-S" }, "active_coordinator": false, "entities": [ { "entity_id": "alarm_control_panel.entryway_keypad_alarm_control_panel", "name": "iMagic by GreatStar 1112-S" }, { "entity_id": "binary_sensor.entryway_keypad_ias_zone", "name": "iMagic by GreatStar 1112-S" }, { "entity_id": "button.entryway_keypad_identify", "name": "iMagic by GreatStar 1112-S" }, { "entity_id": "sensor.imagic_by_greatstar_1112_s_battery", "name": "iMagic by GreatStar 1112-S" }, { "entity_id": "sensor.imagic_by_greatstar_1112_s_temperature", "name": "iMagic by GreatStar 1112-S" }, { "entity_id": "sensor.entryway_keypad_humidity", "name": "iMagic by GreatStar 1112-S" } ], "neighbors": [], "routes": [], "endpoint_names": [ { "name": "IAS_ZONE" } ], "user_given_name": "Entryway Keypad", "device_reg_id": "a729b672a6e04cbe8566784ce78addf0", "area_id": "entryway", "cluster_details": { "1": { "device_type": { "name": "IAS_ZONE", "id": 1026 }, "profile_id": 260, "in_clusters": { "0x0000": { "endpoint_attribute": "basic", "attributes": { "0x0004": { "attribute_name": "manufacturer", "value": "iMagic by GreatStar" }, "0x0005": { "attribute_name": "model", "value": "1112-S" } }, "unsupported_attributes": {} }, "0x0001": { "endpoint_attribute": "power", "attributes": { "0x0033": { "attribute_name": "battery_quantity", "value": 0 }, "0x0031": { "attribute_name": "battery_size", "value": 255 }, "0x0020": { "attribute_name": "battery_voltage", "value": 56 } }, "unsupported_attributes": { "0x0021": { "attribute_name": "battery_percentage_remaining" } } }, "0x0003": { "endpoint_attribute": "identify", "attributes": {}, "unsupported_attributes": {} }, "0x0020": { "endpoint_attribute": "poll_control", "attributes": { "0x0000": { "attribute_name": "checkin_interval", "value": 13200 } }, "unsupported_attributes": {} }, "0x0402": { "endpoint_attribute": "temperature", "attributes": { "0x0000": { "attribute_name": "measured_value", "value": 2570 } }, "unsupported_attributes": {} }, "0x0405": { "endpoint_attribute": "humidity", "attributes": { "0x0000": { "attribute_name": "measured_value", "value": 3080 } }, "unsupported_attributes": {} }, "0x0500": { "endpoint_attribute": "ias_zone", "attributes": { "0x0010": { "attribute_name": "cie_addr", "value": "bc:02:6e:ff:fe:22:9c:95" }, "0x0000": { "attribute_name": "zone_state", "value": 1 }, "0x0002": { "attribute_name": "zone_status", "value": 0 }, "0x0001": { "attribute_name": "zone_type", "value": 541 } }, "unsupported_attributes": {} }, "0x0501": { "endpoint_attribute": "ias_ace", "attributes": {}, "unsupported_attributes": {} }, "0x0b05": { "endpoint_attribute": "diagnostic", "attributes": {}, "unsupported_attributes": {} }, "0xfc01": { "endpoint_attribute": "manufacturer_specific", "attributes": {}, "unsupported_attributes": {} }, "0xfc02": { "endpoint_attribute": "manufacturer_specific", "attributes": {}, "unsupported_attributes": {} } }, "out_clusters": { "0x0003": { "endpoint_attribute": "identify", "attributes": {}, "unsupported_attributes": {} }, "0x0019": { "endpoint_attribute": "ota", "attributes": {}, "unsupported_attributes": {} }, "0x0501": { "endpoint_attribute": "ias_ace", "attributes": {}, "unsupported_attributes": {} } } } } } } ```

Logs

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

Custom quirk

Custom quirk ```python [Paste your custom quirk here] ```

Additional information

The hubitat driver they use can be found here.

https://github.com/hubitat/HubitatPublic/blob/master/examples/drivers/irisKeypadV3.groovy

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.

consolecwby commented 1 month ago

boo

werddomain commented 4 weeks ago

😥