Skip to content

[BUG] AduroSmart scene switch not detecting scene button clicks #2655

@Daandeve

Description

@Daandeve

Bug description

When integrating the AduroSmart scene switch in zha the scene switches do not work.
The on/off switch works fine, but the other 3 (scene) switches do not work. Well sort of when one of the 3 scene buttons is pressed the battery percentage changes.

Steps to reproduce

  1. Integrate the device into zha
  2. Click one of the 3 scene buttons

Expected behavior

The switch should be detected as the scene switch and not the dimmer switch

Screenshots/Video

Screenshots/Video image image

Device signature

Device signature
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=4653, maximum_buffer_size=127, maximum_incoming_transfer_size=100, server_mask=0, maximum_outgoing_transfer_size=100, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *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": "0xc05e",
      "device_type": "0x0810",
      "input_clusters": [
        "0x0000",
        "0x0001",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0008",
        "0x0300",
        "0x1000",
        "0xfccc"
      ],
      "output_clusters": [
        "0x0000",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0008",
        "0x0300",
        "0x1000",
        "0xfccc"
      ]
    },
    "2": {
      "profile_id": "0xc05e",
      "device_type": "0x03f2",
      "input_clusters": [
        "0x1000"
      ],
      "output_clusters": [
        "0x1000"
      ]
    }
  },
  "manufacturer": "AduroSmart Eria",
  "model": "ADUROLIGHT_CSC",
  "class": "zigpy.device.Device"
}

Diagnostic information

Diagnostic information
{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2023.10.3",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.5",
    "docker": true,
    "arch": "x86_64",
    "timezone": "Europe/Amsterdam",
    "os_name": "Linux",
    "os_version": "6.1.56",
    "supervisor": "2023.10.0",
    "host_os": "Home Assistant OS 11.0",
    "docker_version": "24.0.6",
    "chassis": "vm",
    "run_as_root": true
  },
  "custom_components": {
    "cozylife": {
      "version": "0.4.0",
      "requirements": []
    },
    "govee_lan": {
      "version": "1.0.0",
      "requirements": [
        "govee-led-wez>=0.0.15"
      ]
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "localtuya": {
      "version": "5.2.1",
      "requirements": []
    },
    "afvalbeheer": {
      "version": "5.2.8",
      "requirements": [
        "rsa",
        "pycryptodome"
      ]
    },
    "volkswagencarnet": {
      "version": "v4.4.65",
      "requirements": [
        "pytz",
        "volkswagencarnet==4.4.62"
      ]
    },
    "edge_tts": {
      "version": "0.0.1",
      "requirements": [
        "edge-tts==6.1.8"
      ]
    },
    "mass": {
      "version": "2023.2.2",
      "requirements": []
    },
    "govee": {
      "version": "0.2.2",
      "requirements": [
        "govee-api-laggat==0.2.2",
        "dacite==1.6.0"
      ]
    },
    "powercalc": {
      "version": "v1.9.5",
      "requirements": [
        "numpy>=1.21.1"
      ]
    },
    "pfsense": {
      "version": "0.1.0",
      "requirements": [
        "mac-vendor-lookup>=0.1.11"
      ]
    },
    "alarmo": {
      "version": "v1.9.10",
      "requirements": []
    },
    "ddwrt": {
      "version": "1.1.3",
      "requirements": []
    },
    "optimal_humidity": {
      "version": "v2.0.6",
      "requirements": [
        "psychrolib>=2.5.0"
      ]
    },
    "watchman": {
      "version": "0.5.1",
      "requirements": [
        "prettytable==3.0.0"
      ]
    },
    "thermal_comfort": {
      "version": "2.1.1",
      "requirements": []
    },
    "adaptive_lighting": {
      "version": "1.19.0",
      "requirements": [
        "ulid-transform"
      ]
    },
    "google_home": {
      "version": "1.10.0",
      "requirements": [
        "glocaltokens==0.7.0"
      ]
    },
    "legacy_samsungtv": {
      "version": "1.0.0",
      "requirements": [
        "samsungTVlegacy[websocket]==0.1.1",
        "samsungtvws==1.4.0"
      ]
    }
  },
  "integration_manifest": {
    "domain": "zha",
    "name": "Zigbee Home Automation",
    "after_dependencies": [
      "onboarding",
      "usb"
    ],
    "codeowners": [
      "@dmulcahey",
      "@adminiuga",
      "@puddly"
    ],
    "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.36.5",
      "pyserial==3.5",
      "pyserial-asyncio==0.6",
      "zha-quirks==0.0.104",
      "zigpy-deconz==0.21.1",
      "zigpy==0.57.2",
      "zigpy-xbee==0.18.3",
      "zigpy-zigate==0.11.0",
      "zigpy-znp==0.11.5",
      "universal-silabs-flasher==0.0.14",
      "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": "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": 18588,
    "manufacturer": "AduroSmart Eria",
    "model": "ADUROLIGHT_CSC",
    "name": "AduroSmart Eria ADUROLIGHT_CSC",
    "quirk_applied": false,
    "quirk_class": "zigpy.device.Device",
    "manufacturer_code": 4653,
    "power_source": "Battery or Unknown",
    "lqi": 47,
    "rssi": null,
    "last_seen": "2023-10-17T19:21:28",
    "available": true,
    "device_type": "EndDevice",
    "signature": {
      "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=4653, maximum_buffer_size=127, maximum_incoming_transfer_size=100, server_mask=0, maximum_outgoing_transfer_size=100, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *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": "0xc05e",
          "device_type": "0x0810",
          "input_clusters": [
            "0x0000",
            "0x0001",
            "0x0003",
            "0x0004",
            "0x0005",
            "0x0006",
            "0x0008",
            "0x0300",
            "0x1000",
            "0xfccc"
          ],
          "output_clusters": [
            "0x0000",
            "0x0003",
            "0x0004",
            "0x0005",
            "0x0006",
            "0x0008",
            "0x0300",
            "0x1000",
            "0xfccc"
          ]
        },
        "2": {
          "profile_id": "0xc05e",
          "device_type": "0x03f2",
          "input_clusters": [
            "0x1000"
          ],
          "output_clusters": [
            "0x1000"
          ]
        }
      },
      "manufacturer": "AduroSmart Eria",
      "model": "ADUROLIGHT_CSC"
    },
    "active_coordinator": false,
    "entities": [
      {
        "entity_id": "button.living_scene_switcher_identify",
        "name": "AduroSmart Eria ADUROLIGHT_CSC"
      },
      {
        "entity_id": "sensor.living_scene_switcher_battery",
        "name": "AduroSmart Eria ADUROLIGHT_CSC"
      },
      {
        "entity_id": "switch.living_scene_switcher_switch",
        "name": "AduroSmart Eria ADUROLIGHT_CSC"
      }
    ],
    "neighbors": [],
    "routes": [],
    "endpoint_names": [
      {
        "name": "COLOR_SCENE_CONTROLLER"
      },
      {
        "name": "undefined_0x03f2"
      }
    ],
    "user_given_name": "Living scene switcher",
    "device_reg_id": "937360f0bbecf1df788d1c5d373a3f63",
    "area_id": "e6ebd17507d511ebbf51c9d1c91cb7c2",
    "cluster_details": {
      "1": {
        "device_type": {
          "name": "COLOR_SCENE_CONTROLLER",
          "id": 2064
        },
        "profile_id": 49246,
        "in_clusters": {
          "0x0000": {
            "endpoint_attribute": "basic",
            "attributes": {
              "0x0004": {
                "attribute_name": "manufacturer",
                "value": "AduroSmart Eria"
              },
              "0x0005": {
                "attribute_name": "model",
                "value": "ADUROLIGHT_CSC"
              }
            },
            "unsupported_attributes": {}
          },
          "0x0004": {
            "endpoint_attribute": "groups",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0003": {
            "endpoint_attribute": "identify",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0006": {
            "endpoint_attribute": "on_off",
            "attributes": {
              "0x0000": {
                "attribute_name": "on_off",
                "value": true
              }
            },
            "unsupported_attributes": {}
          },
          "0x0008": {
            "endpoint_attribute": "level",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0005": {
            "endpoint_attribute": "scenes",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0300": {
            "endpoint_attribute": "light_color",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x1000": {
            "endpoint_attribute": "lightlink",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0001": {
            "endpoint_attribute": "power",
            "attributes": {
              "0x0021": {
                "attribute_name": "battery_percentage_remaining",
                "value": 120
              },
              "0x0020": {
                "attribute_name": "battery_voltage",
                "value": 28
              }
            },
            "unsupported_attributes": {}
          },
          "0xfccc": {
            "endpoint_attribute": "manufacturer_specific",
            "attributes": {},
            "unsupported_attributes": {}
          }
        },
        "out_clusters": {
          "0x0000": {
            "endpoint_attribute": "basic",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0004": {
            "endpoint_attribute": "groups",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0003": {
            "endpoint_attribute": "identify",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0006": {
            "endpoint_attribute": "on_off",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0008": {
            "endpoint_attribute": "level",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0005": {
            "endpoint_attribute": "scenes",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0300": {
            "endpoint_attribute": "light_color",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x1000": {
            "endpoint_attribute": "lightlink",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0xfccc": {
            "endpoint_attribute": "manufacturer_specific",
            "attributes": {},
            "unsupported_attributes": {}
          }
        }
      },
      "2": {
        "device_type": {
          "name": "undefined_0x03f2",
          "id": 1010
        },
        "profile_id": 49246,
        "in_clusters": {
          "0x1000": {
            "endpoint_attribute": "lightlink",
            "attributes": {},
            "unsupported_attributes": {}
          }
        },
        "out_clusters": {
          "0x1000": {
            "endpoint_attribute": "lightlink",
            "attributes": {},
            "unsupported_attributes": {}
          }
        }
      }
    }
  }
}

Logs

Logs
2023-10-17 19:40:36.609 DEBUG (MainThread) [zigpy_znp.api] Received command: AF.IncomingMsg.Callback(GroupId=0xF994, ClusterId=5, SrcAddr=0x489C, SrcEndpoint=1, DstEndpoint=1, WasBroadcast=<Bool.false: 0>, LQI=76, SecurityUse=<Bool.false: 0>, TimeStamp=8667961, TSN=0, Data=b'\x11\x98\x05\x94\xF9\xFF', MacSrcAddr=0x489C, MsgResultRadius=29)
2023-10-17 19:40:36.610 DEBUG (MainThread) [zigpy.application] Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x489C), src_ep=1, dst=AddrModeAddress(addr_mode=<AddrMode.Group: 1>, address=0xF994), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=5, data=Serialized[b'\x11\x98\x05\x94\xf9\xff'], tx_options=<TransmitOptions.NONE: 0>, radius=29, non_member_radius=0, lqi=76, rssi=None)
2023-10-17 19:40:36.610 DEBUG (MainThread) [zigpy.zcl] [0x489C:1:0x0005] Received ZCL frame: b'\x11\x98\x05\x94\xf9\xff'
2023-10-17 19:40:36.610 DEBUG (MainThread) [zigpy.zcl] [0x489C:1:0x0005] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=<FrameType.CLUSTER_COMMAND: 1>, is_manufacturer_specific=0, direction=<Direction.Server_to_Client: 0>, disable_default_response=1, reserved=0, *is_cluster=True, *is_general=False), tsn=152, command_id=5, *direction=<Direction.Server_to_Client: 0>)
2023-10-17 19:40:36.610 DEBUG (MainThread) [zigpy.zcl] [0x489C:1:0x0005] Decoded ZCL frame: Scenes:recall(group_id=0xF994, scene_id=255, transition_time=None)
2023-10-17 19:40:36.610 DEBUG (MainThread) [zigpy.zcl] [0x489C:1:0x0005] Received command 0x05 (TSN 152): recall(group_id=0xF994, scene_id=255, transition_time=None)
2023-10-17 19:40:36.611 DEBUG (MainThread) [zigpy.zcl] [0x489C:1:0x0005] No explicit handler for cluster command 0x05: recall(group_id=0xF994, scene_id=255, transition_time=None)

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions