diff --git a/zhaquirks/philips/__init__.py b/zhaquirks/philips/__init__.py index 6b8b2dfdda..294b28d172 100644 --- a/zhaquirks/philips/__init__.py +++ b/zhaquirks/philips/__init__.py @@ -340,3 +340,25 @@ class PhilipsRwlRemoteCluster(PhilipsRemoteCluster): 3: Button("down", DIM_DOWN), 4: Button("off", TURN_OFF), } + + +class PhilipsEffectCluster(CustomCluster): + """Philips effect cluster.""" + + cluster_id = 0xFC03 + ep_attribute = "philips_effect" + + class ServerCommandDefs(foundation.BaseCommandDefs): + """Server command definitions.""" + + set_effect: Final = foundation.ZCLCommandDef( + id=0x00, + schema={ + "param1": t.uint8_t, + "param2": t.uint8_t, + "param3": t.uint8_t, + "param4": t.uint8_t, + }, + direction=foundation.Direction.Client_to_Server, + is_manufacturer_specific=True, + ) diff --git a/zhaquirks/philips/hue_go.py b/zhaquirks/philips/hue_go.py new file mode 100644 index 0000000000..e5e83da510 --- /dev/null +++ b/zhaquirks/philips/hue_go.py @@ -0,0 +1,12 @@ +"""Philips Hue Go device.""" + +from zigpy.quirks.v2 import QuirkBuilder + +from zhaquirks.philips import PHILIPS, PhilipsEffectCluster + +( + QuirkBuilder(PHILIPS, "7602031P7") + .also_applies_to(PHILIPS, "7602031U7") + .replaces(PhilipsEffectCluster, endpoint_id=11) + .add_to_registry() +)