Tuya configuration for `tuya_manufacturer` cluster (#81311)
* Tuya configuration for tuya_manufacturer cluster * fix codespell * Add attributes initialization * Fix pylint complaintspull/81423/head
parent
4684101a85
commit
c2c57712d2
|
@ -59,6 +59,41 @@ class PhillipsRemote(ZigbeeChannel):
|
|||
REPORT_CONFIG = ()
|
||||
|
||||
|
||||
@registries.CHANNEL_ONLY_CLUSTERS.register(registries.TUYA_MANUFACTURER_CLUSTER)
|
||||
@registries.ZIGBEE_CHANNEL_REGISTRY.register(registries.TUYA_MANUFACTURER_CLUSTER)
|
||||
class TuyaChannel(ZigbeeChannel):
|
||||
"""Channel for the Tuya manufacturer Zigbee cluster."""
|
||||
|
||||
REPORT_CONFIG = ()
|
||||
|
||||
def __init__(self, cluster: zigpy.zcl.Cluster, ch_pool: ChannelPool) -> None:
|
||||
"""Initialize TuyaChannel."""
|
||||
super().__init__(cluster, ch_pool)
|
||||
|
||||
if self.cluster.endpoint.manufacturer in (
|
||||
"_TZE200_7tdtqgwv",
|
||||
"_TZE200_amp6tsvy",
|
||||
"_TZE200_oisqyl4o",
|
||||
"_TZE200_vhy3iakz",
|
||||
"_TZ3000_uim07oem",
|
||||
"_TZE200_wfxuhoea",
|
||||
"_TZE200_tviaymwx",
|
||||
"_TZE200_g1ib5ldv",
|
||||
"_TZE200_wunufsil",
|
||||
"_TZE200_7deq70b8",
|
||||
"_TZE200_tz32mtza",
|
||||
"_TZE200_2hf7x9n3",
|
||||
"_TZE200_aqnazj70",
|
||||
"_TZE200_1ozguk6x",
|
||||
"_TZE200_k6jhsr0q",
|
||||
"_TZE200_9mahtqtg",
|
||||
):
|
||||
self.ZCL_INIT_ATTRS = { # pylint: disable=invalid-name
|
||||
"backlight_mode": True,
|
||||
"power_on_state": True,
|
||||
}
|
||||
|
||||
|
||||
@registries.CHANNEL_ONLY_CLUSTERS.register(0xFCC0)
|
||||
@registries.ZIGBEE_CHANNEL_REGISTRY.register(0xFCC0)
|
||||
class OppleRemote(ZigbeeChannel):
|
||||
|
|
|
@ -33,6 +33,7 @@ PHILLIPS_REMOTE_CLUSTER = 0xFC00
|
|||
SMARTTHINGS_ACCELERATION_CLUSTER = 0xFC02
|
||||
SMARTTHINGS_ARRIVAL_SENSOR_DEVICE_TYPE = 0x8000
|
||||
SMARTTHINGS_HUMIDITY_CLUSTER = 0xFC45
|
||||
TUYA_MANUFACTURER_CLUSTER = 0xEF00
|
||||
VOC_LEVEL_CLUSTER = 0x042E
|
||||
|
||||
REMOTE_DEVICE_TYPES = {
|
||||
|
|
|
@ -240,6 +240,27 @@ class TuyaPowerOnState(types.enum8):
|
|||
channel_names=CHANNEL_ON_OFF,
|
||||
models={"TS011F", "TS0121", "TS0001", "TS0002", "TS0003", "TS0004"},
|
||||
)
|
||||
@CONFIG_DIAGNOSTIC_MATCH(
|
||||
channel_names="tuya_manufacturer",
|
||||
manufacturers={
|
||||
"_TZE200_7tdtqgwv",
|
||||
"_TZE200_amp6tsvy",
|
||||
"_TZE200_oisqyl4o",
|
||||
"_TZE200_vhy3iakz",
|
||||
"_TZ3000_uim07oem",
|
||||
"_TZE200_wfxuhoea",
|
||||
"_TZE200_tviaymwx",
|
||||
"_TZE200_g1ib5ldv",
|
||||
"_TZE200_wunufsil",
|
||||
"_TZE200_7deq70b8",
|
||||
"_TZE200_tz32mtza",
|
||||
"_TZE200_2hf7x9n3",
|
||||
"_TZE200_aqnazj70",
|
||||
"_TZE200_1ozguk6x",
|
||||
"_TZE200_k6jhsr0q",
|
||||
"_TZE200_9mahtqtg",
|
||||
},
|
||||
)
|
||||
class TuyaPowerOnStateSelectEntity(ZCLEnumSelectEntity, id_suffix="power_on_state"):
|
||||
"""Representation of a ZHA power on state select entity."""
|
||||
|
||||
|
@ -248,6 +269,44 @@ class TuyaPowerOnStateSelectEntity(ZCLEnumSelectEntity, id_suffix="power_on_stat
|
|||
_attr_name = "Power on state"
|
||||
|
||||
|
||||
class MoesBacklightMode(types.enum8):
|
||||
"""MOES switch backlight mode enum."""
|
||||
|
||||
Off = 0x00
|
||||
LightWhenOn = 0x01
|
||||
LightWhenOff = 0x02
|
||||
Freeze = 0x03
|
||||
|
||||
|
||||
@CONFIG_DIAGNOSTIC_MATCH(
|
||||
channel_names="tuya_manufacturer",
|
||||
manufacturers={
|
||||
"_TZE200_7tdtqgwv",
|
||||
"_TZE200_amp6tsvy",
|
||||
"_TZE200_oisqyl4o",
|
||||
"_TZE200_vhy3iakz",
|
||||
"_TZ3000_uim07oem",
|
||||
"_TZE200_wfxuhoea",
|
||||
"_TZE200_tviaymwx",
|
||||
"_TZE200_g1ib5ldv",
|
||||
"_TZE200_wunufsil",
|
||||
"_TZE200_7deq70b8",
|
||||
"_TZE200_tz32mtza",
|
||||
"_TZE200_2hf7x9n3",
|
||||
"_TZE200_aqnazj70",
|
||||
"_TZE200_1ozguk6x",
|
||||
"_TZE200_k6jhsr0q",
|
||||
"_TZE200_9mahtqtg",
|
||||
},
|
||||
)
|
||||
class MoesBacklightModeSelectEntity(ZCLEnumSelectEntity, id_suffix="backlight_mode"):
|
||||
"""Moes devices have a different backlight mode select options."""
|
||||
|
||||
_select_attr = "backlight_mode"
|
||||
_enum = MoesBacklightMode
|
||||
_attr_name = "Backlight mode"
|
||||
|
||||
|
||||
class AqaraMotionSensitivities(types.enum8):
|
||||
"""Aqara motion sensitivities."""
|
||||
|
||||
|
|
Loading…
Reference in New Issue