Skip to content

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

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

Open
Daandeve opened this issue Oct 17, 2023 · 6 comments · May be fixed by #4071
Open

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

Daandeve opened this issue Oct 17, 2023 · 6 comments · May be fixed by #4071
Labels
device support request This requests support for a new device

Comments

@Daandeve
Copy link

Daandeve commented Oct 17, 2023

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

Copy link

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.

@github-actions github-actions bot added the stale Issue is inactivate and might get closed soon label Apr 14, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Apr 21, 2024
@Daandeve
Copy link
Author

This issue is still relevant, the switch does not work properly with HA: 2024.5.2

@Vinno97
Copy link

Vinno97 commented Apr 6, 2025

@TheJulianJES Sorry for reviving such an old issue, but I also believe this issue is incorrectly closed by github-actions. I'm running into the same issues with this remote. It appears that the remote is "compliant" in reporting a scene change. However, there is handler for "recalling scenes", which is what the "scene" buttons trigger. As far as I'm aware, HA doesn't actually use Zigbee scenes (right?) so would the best solution be to to remap this to a button action?

I'd be willing to help implement this if desired.

@TheJulianJES TheJulianJES added device support request This requests support for a new device and removed stale Issue is inactivate and might get closed soon labels Apr 6, 2025
@TheJulianJES TheJulianJES reopened this Apr 6, 2025
@fabio-s-franco fabio-s-franco linked a pull request May 17, 2025 that will close this issue
3 tasks
@fabio-s-franco
Copy link

@TheJulianJES @Vinno97
I created a new quirk (under the aduro folder). The exiting quirk is for the dimmer switch, which although apparently almost identical, behaves very differently than the scene switch.

This dimmer model is Adurolight_NCC, the new quirk is for model Adurolight_CSC

@Vinno97
Copy link

Vinno97 commented May 23, 2025

Many thanks, Fabio! I just tried the new quirk and it works great :)
For me, my troubles are completely fixed by the PR.

Out of curiosity: you write that there are other events that these buttons send, what are those? Are those button press/release events?

@Vinno97
Copy link

Vinno97 commented May 23, 2025

Straight after commenting that, I was spamming some buttons and the devices appeared to stop working.

The only thing I can see is that the log is spammed with messages like this:

Event is not JSON serializable: <Event zha_event[L]: device_ieee=00:15:8d:00:05:8c:ef:99, device_id=bb43b573c27708aad1be05b4cfa803ce, unique_id=00:15:8d:00:05:8c:ef:99:1:0xfccc, endpoint_id=1, cluster_id=64716, command=button_4_long_press, args=button=button_4, press_type=remote_button_long_press, args=b'\x01\x03\x00', params=, params=>: Type is not JSON serializable: bytes

I'll check again in the morning


Update: Couldn't get it to do anything, lights on the remote didn't even light up when pressing them. Re-pairing appeared to resolve it, we'll see if it stays like that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
device support request This requests support for a new device
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants