Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
1 task done
kekeao opened this issue Jun 4, 2024 · 4 comments
Open
1 task done
Labels
bug Something isn't working

Comments

@kekeao
Copy link

kekeao commented Jun 4, 2024

Is there an existing issue for this?

  • I have searched the existing issues

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):
- SINGLE: 1_min_inactivity
Button 2 (flip90):
- SINGLE: flip90
Button 3 (flip180):
- SINGLE: flip180
Button 5 (shake):
- SINGLE: shake
Button 6 (slide):
- SINGLE: slide
Button 7 (tap):
- SINGLE: tap
Button 8 (throw):
- SINGLE: throw
Button 9 (rotate_left):
- SINGLE: rotate_left
Button 10 (rotate_right):
- SINGLE: rotate_right
Button 11 (side_up):
- SINGLE: side_up
Button 12 (flip_to_side):
- SINGLE: flip_to_side
[6/4/2024, 9:26:14 AM] Homebridge v1.8.2 (HAP v0.12.1) (homebridge-z2m) is running on port 36039.
[6/4/2024, 9:26:14 AM] [homebridge-z2m] Connected to MQTT server
[6/4/2024, 9:26:14 AM] [homebridge-z2m] Using Zigbee2MQTT v1.37.1 (identified via zigbee2mqtt/bridge/info)

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

@kekeao kekeao added the bug Something isn't working label Jun 4, 2024
@itavero
Copy link
Owner

itavero commented Jun 4, 2024

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
Copy link
Author

kekeao commented Jun 5, 2024

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
Copy link
Owner

itavero commented Jun 5, 2024

So this issue can be closed?

@itavero itavero added the stale label Jun 13, 2024
@Naqsaq
Copy link

Naqsaq commented Oct 30, 2024

The original issue and error message still of course persists. For me the cube worked directly in homekit, but it's mapped with the "wrong" set of Actions. The cube can be set into two different "modes" (https://www.zigbee2mqtt.io/devices/CTP-R01.html) and seems the buttons are being mapped according to the "Action Mode", rather than the "Scene Mode" (which is the default). This could be a problem with the device integration into z2m itself.

Here's the device info in better format:

[{
    "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": "0x00124b002f89f498",
    "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": "Aqara Cube 1",
    "ieee_address": "0x54ef441000b27c13",
    "interview_completed": true,
    "interviewing": false,
    "manufacturer": "LUMI",
    "model_id": "lumi.remote.cagl02",
    "network_address": 12839,
    "power_source": "Battery",
    "software_build_id": "0.0.0_0028",
    "supported": true,
    "type": "EndDevice"
}]

@stale stale bot removed the stale label Oct 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants