itavero / homebridge-z2m

Expose your Zigbee devices to HomeKit with ease, by integrating 🐝 Zigbee2MQTT with 🏠 Homebridge.
https://z2m.dev
Apache License 2.0
297 stars 47 forks source link

[Bug] Error: Cannot add a Service with the same UUID '00000089-0000-1000-8000-0026BB765291 #883

Open kekeao opened 1 month ago

kekeao commented 1 month ago

Is there an existing issue for this?

Describe the bug

I am trying to add my Aqara Cube T1 Pro via Homebridge and z2m to my homekit, but i get an error message. I tryed to find a solution via searching the web but nothing works for me. I deleted the accessory folder in homebridge, and i also deactivate all other plugins that i have but the message remains, and i could not add any switches for the Cube into homekit.

[6/4/2024, 9:26:14 AM] [homebridge-z2m] Failed to setup stateless programmable switch for accessory AqaraCube from expose "{"access":1,"category":"diagnostic","description":"Triggered action (e.g. a button click)","label":"Action","name":"action","property":"action","type":"enum","values":["shake","throw","tap","slide","flip180","flip90","hold","side_up","rotate_left","rotate_right","1_min_inactivity","flip_to_side"]}" and mapping "{"valueLongPress":"hold","serviceLabelIndex":4}", error: Error: Cannot add a Service with the same UUID '00000089-0000-1000-8000-0026BB765291' as another Service in this Accessory without also defining a unique 'subtype' property. [6/4/2024, 9:26:14 AM] [homebridge-z2m] Mapping of property 'action' of device 'AqaraCube': Button 1 (1_min_inactivity):

Related devices

aqara cubi T1 pro

Related Devices

No response

Steps To Reproduce

No response

Expected behavior

No response

Device entry

[{"definition":null,"disabled":false,"endpoints":{"1":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"10":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"11":{"bindings":[],"clusters":{"input":["ssIasAce","genTime"],"output":["ssIasZone","ssIasWd"]},"configured_reportings":[],"scenes":[]},"110":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"12":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"13":{"bindings":[],"clusters":{"input":["genOta"],"output":[]},"configured_reportings":[],"scenes":[]},"2":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"242":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"3":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"4":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"47":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"5":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"6":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]},"8":{"bindings":[],"clusters":{"input":[],"output":[]},"configured_reportings":[],"scenes":[]}},"friendly_name":"Coordinator","ieee_address":"0x00124b0029dede57","interview_completed":true,"interviewing":false,"network_address":0,"supported":true,"type":"Coordinator"},{"date_code":"20230825","definition":{"description":"Cube T1 Pro","exposes":[{"access":1,"category":"diagnostic","description":"Remaining battery in %, can take up to 24 hours before reported","label":"Battery","name":"battery","property":"battery","type":"numeric","unit":"%","value_max":100,"value_min":0},{"access":1,"category":"diagnostic","description":"Voltage of the battery in millivolts","label":"Voltage","name":"voltage","property":"voltage","type":"numeric","unit":"mV"},{"access":1,"category":"diagnostic","description":"Number of power outages","label":"Power outage count","name":"power_outage_count","property":"power_outage_count","type":"numeric"},{"access":2,"description":"[Soft Switch]: There is a configuration window, opens once an hour on itself, only during which the cube will respond to mode switch. Mode switch will be scheduled to take effect when the window becomes available. You can also give it a throw action (no backward motion) to force a respond! Otherwise, you may open lid and click LINK once to make the cube respond immediately. [Hard Switch]: Open lid and click LINK button 5 times.","label":"Operation mode","name":"operation_mode","property":"operation_mode","type":"enum","values":["action_mode","scene_mode"]},{"access":1,"description":"Side of the cube","label":"Side","name":"side","property":"side","type":"numeric","value_max":6,"value_min":0,"value_step":1},{"access":1,"description":"Side of the cube","label":"Action from side","name":"action_from_side","property":"action_from_side","type":"numeric","value_max":6,"value_min":0,"value_step":1},{"access":1,"label":"Action angle","name":"action_angle","property":"action_angle","type":"numeric","unit":"°","value_max":360,"value_min":-360},{"access":1,"category":"diagnostic","description":"Triggered action (e.g. a button click)","label":"Action","name":"action","property":"action","type":"enum","values":["shake","throw","tap","slide","flip180","flip90","hold","side_up","rotate_left","rotate_right","1_min_inactivity","flip_to_side"]},{"access":1,"category":"diagnostic","description":"Link quality (signal strength)","label":"Linkquality","name":"linkquality","property":"linkquality","type":"numeric","unit":"lqi","value_max":255,"value_min":0}],"model":"CTP-R01","options":[{"access":2,"description":"Set to false to disable the legacy integration (highly recommended), will change structure of the published payload (default true).","label":"Legacy","name":"legacy","property":"legacy","type":"binary","value_off":false,"value_on":true}],"supports_ota":true,"vendor":"Aqara"},"disabled":false,"endpoints":{"1":{"bindings":[],"clusters":{"input":["genBasic","genIdentify","genPowerCfg","genMultistateInput","genOnOff"],"output":["genBasic","genIdentify","genOta"]},"configured_reportings":[],"scenes":[]},"2":{"bindings":[],"clusters":{"input":["genMultistateInput"],"output":["genMultistateInput"]},"configured_reportings":[],"scenes":[]},"3":{"bindings":[],"clusters":{"input":["genAnalogInput"],"output":["genAnalogInput"]},"configured_reportings":[],"scenes":[]}},"friendly_name":"AqaraCube","ieee_address":"0x54ef441000b2808e","interview_completed":true,"interviewing":false,"manufacturer":"LUMI","model_id":"lumi.remote.cagl02","network_address":461,"power_source":"Battery","software_build_id":"0.0.0_0028","supported":true,"type":"EndDevice"}]

Status update

No response

Messages from this plugin

No response

This plugin

v1.9.3

Homebridge

v20.12.2

Zigbee2MQTT

v1.9.3

Homebridge Config UI X (if applicable)

No response

itavero commented 1 month ago

Hard to read the unformatted device information on my phone. Seems that if has multiple things that would be mapped as an Stateless Programmable Switch on the same endpoint.

Currently that's not supported by homebridge-z2m. One of them may still work, given that if does print out a mapping.

Note that in a recent update, Apple changed something in their Home.app that makes some Stateless Programmable Switch services not show up correctly (according to reports from others, did not check myself). A third party app like Eve or Controller for HomeKit may help in that situation.

kekeao commented 1 month ago

Hey, high five to you. Because after 1 week of searching and trying you solved my problem. With the eve app i was able to get the cube visible in homekit with all buttons. Now i can use it finally. A big thank you !

itavero commented 4 weeks ago

So this issue can be closed?