From 710d849af33bb49d035871c7702aade737a316c5 Mon Sep 17 00:00:00 2001 From: Ole Christian Tvedt Date: Wed, 6 Mar 2024 22:58:03 +0100 Subject: [PATCH 1/3] Add quirk Conecto TS0601 _TZE200_zppcgbdj (#3024) The device is a Tuya rebrand, and the quirk is almost identical to one of the existing Tuya quirks (but with a different humidity multiplier). --- zhaquirks/tuya/ts0601_sensor.py | 46 +++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/zhaquirks/tuya/ts0601_sensor.py b/zhaquirks/tuya/ts0601_sensor.py index 30338fab49..9da4a2e705 100644 --- a/zhaquirks/tuya/ts0601_sensor.py +++ b/zhaquirks/tuya/ts0601_sensor.py @@ -142,6 +142,52 @@ class TuyaTempHumiditySensor(CustomDevice): }, } +class TuyaTempHumiditySensor_Conecto_Display(CustomDevice): + """Custom device representing tuya temp and humidity sensor with e-ink screen.""" + + # RelativeHumidity multiplier + # RH_MULTIPLIER = 100 + + signature = { + # + MODELS_INFO: [ + ("_TZE200_zppcgbdj", "TS0601"), + ], + ENDPOINTS: { + 1: { + PROFILE_ID: zha.PROFILE_ID, + DEVICE_TYPE: zha.DeviceType.SMART_PLUG, + INPUT_CLUSTERS: [ + Basic.cluster_id, + Groups.cluster_id, + Scenes.cluster_id, + TemperatureHumidityManufCluster.cluster_id, + ], + OUTPUT_CLUSTERS: [Ota.cluster_id, Time.cluster_id], + } + }, + } + + replacement = { + SKIP_CONFIGURATION: True, + ENDPOINTS: { + 1: { + PROFILE_ID: zha.PROFILE_ID, + DEVICE_TYPE: zha.DeviceType.TEMPERATURE_SENSOR, + INPUT_CLUSTERS: [ + TemperatureHumidityManufCluster, # Single bus for temp, humidity, and battery + TuyaTemperatureMeasurement, + TuyaRelativeHumidity, + TuyaPowerConfigurationCluster2AAA, + ], + OUTPUT_CLUSTERS: [Ota.cluster_id, Time.cluster_id], + } + }, + } + class TuyaTempHumiditySensor_Square(CustomDevice): """Custom device representing tuya temp and humidity sensor with e-ink screen.""" From 6a959d3b2b72ef717c774e34725bc20596cc24cf Mon Sep 17 00:00:00 2001 From: Ole Christian Tvedt Date: Wed, 6 Mar 2024 23:20:16 +0100 Subject: [PATCH 2/3] Fixup: Missing lint required empty line. --- zhaquirks/tuya/ts0601_sensor.py | 1 + 1 file changed, 1 insertion(+) diff --git a/zhaquirks/tuya/ts0601_sensor.py b/zhaquirks/tuya/ts0601_sensor.py index 9da4a2e705..4d0b69d920 100644 --- a/zhaquirks/tuya/ts0601_sensor.py +++ b/zhaquirks/tuya/ts0601_sensor.py @@ -142,6 +142,7 @@ class TuyaTempHumiditySensor(CustomDevice): }, } + class TuyaTempHumiditySensor_Conecto_Display(CustomDevice): """Custom device representing tuya temp and humidity sensor with e-ink screen.""" From 2067289315602214955f59358a639fb333f3dbfa Mon Sep 17 00:00:00 2001 From: Ole Christian Tvedt Date: Mon, 18 Mar 2024 00:15:39 +0100 Subject: [PATCH 3/3] Fixup: Cosmetic changes based on feedback. --- zhaquirks/tuya/ts0601_sensor.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/zhaquirks/tuya/ts0601_sensor.py b/zhaquirks/tuya/ts0601_sensor.py index 4d0b69d920..9a736955fc 100644 --- a/zhaquirks/tuya/ts0601_sensor.py +++ b/zhaquirks/tuya/ts0601_sensor.py @@ -143,19 +143,16 @@ class TuyaTempHumiditySensor(CustomDevice): } -class TuyaTempHumiditySensor_Conecto_Display(CustomDevice): +class TuyaTempHumiditySensorVar02(CustomDevice): """Custom device representing tuya temp and humidity sensor with e-ink screen.""" - # RelativeHumidity multiplier - # RH_MULTIPLIER = 100 - signature = { # MODELS_INFO: [ - ("_TZE200_zppcgbdj", "TS0601"), + ("_TZE200_zppcgbdj", "TS0601"), # Conecto TH ], ENDPOINTS: { 1: {