diff --git a/zhaquirks/tuya/ts004f.py b/zhaquirks/tuya/ts004f.py index 1e679f1114..426ce45124 100644 --- a/zhaquirks/tuya/ts004f.py +++ b/zhaquirks/tuya/ts004f.py @@ -57,17 +57,21 @@ TURN_OFF, TURN_ON, ) +from zhaquirks.quirk_ids import TUYA_PLUG_ONOFF from zhaquirks.tuya import ( EnchantedDevice, TuyaNoBindPowerConfigurationCluster, TuyaSmartRemoteOnOffCluster, TuyaZBExternalSwitchTypeCluster, + TuyaZBOnOffAttributeCluster, ) class TuyaSmartRemote004FROK(EnchantedDevice): """Tuya Smart (rotating) Knob device.""" + quirk_id = TUYA_PLUG_ONOFF + signature = { # "node_descriptor": "NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=0, *allocate_address=True, *complex_descriptor_available=False, *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, *is_valid=True, *logical_type=, *user_descriptor_available=False)", # SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=260, device_version=1, input_clusters=[0, 1, 3, 4, 6, 4096], output_clusters=[25, 10, 3, 4, 5, 6, 8, 4096]) @@ -116,6 +120,7 @@ class TuyaSmartRemote004FROK(EnchantedDevice): TuyaNoBindPowerConfigurationCluster, Identify.cluster_id, Groups.cluster_id, # Is needed for adding group then binding is not working. + TuyaZBOnOffAttributeCluster, LightLink.cluster_id, ], OUTPUT_CLUSTERS: [ @@ -189,6 +194,8 @@ class TuyaSmartRemote004FROK(EnchantedDevice): class TuyaSmartRemote004FDMS(EnchantedDevice): """Tuya 4 btton dimmer switch / remote device.""" + quirk_id = TUYA_PLUG_ONOFF + signature = { # "node_descriptor": "NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=0, *allocate_address=True, *complex_descriptor_available=False, *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, *is_valid=True, *logical_type=, *user_descriptor_available=False)", # SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=260, device_version=1, input_clusters=[0, 1, 3, 4, 6, 4096], output_clusters=[25, 10, 3, 4, 5, 6, 8, 4096]) @@ -233,6 +240,7 @@ class TuyaSmartRemote004FDMS(EnchantedDevice): TuyaNoBindPowerConfigurationCluster, Identify.cluster_id, Groups.cluster_id, # Is needed for adding group then binding is not working. + TuyaZBOnOffAttributeCluster, LightLink.cluster_id, ], OUTPUT_CLUSTERS: [ @@ -324,6 +332,8 @@ class TuyaSmartRemote004FDMS(EnchantedDevice): class TuyaSmartRemote004FSK(EnchantedDevice): """Tuya Smart (Single) Knob device.""" + quirk_id = TUYA_PLUG_ONOFF + signature = { # "node_descriptor": "NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=0, *allocate_address=True, *complex_descriptor_available=False, *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, *is_valid=True, *logical_type=, *user_descriptor_available=False)", # SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=260, device_version=1, input_clusters=[0, 1, 3, 4, 6, 4096, 57345], output_clusters=[25, 10, 3, 4, 6, 8, 4096]) @@ -367,6 +377,7 @@ class TuyaSmartRemote004FSK(EnchantedDevice): TuyaNoBindPowerConfigurationCluster, Identify.cluster_id, Groups.cluster_id, # Is needed for adding group then binding is not working. + TuyaZBOnOffAttributeCluster, LightLink.cluster_id, TuyaZBExternalSwitchTypeCluster, ], @@ -443,6 +454,8 @@ class TuyaSmartRemote004FSK_v2(TuyaSmartRemote004FSK): class TuyaSmartRemote004F(EnchantedDevice): """Tuya 4-button New version remote device.""" + quirk_id = TUYA_PLUG_ONOFF + signature = { # "node_descriptor": "NodeDescriptor(byte1=2, byte2=64, mac_capability_flags=128, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=0, *allocate_address=True, *complex_descriptor_available=False, *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, *is_valid=True, *logical_type=, *user_descriptor_available=False)", # SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=260, device_version=1, input_clusters=[0, 1, 3, 4, 6, 4096], output_clusters=[25, 10, 3, 4, 5, 6, 8, 4096]) @@ -483,6 +496,7 @@ class TuyaSmartRemote004F(EnchantedDevice): TuyaNoBindPowerConfigurationCluster, Identify.cluster_id, Groups.cluster_id, # Is needed for adding group then binding is not working. + TuyaZBOnOffAttributeCluster, LightLink.cluster_id, ], OUTPUT_CLUSTERS: [