From fe64252df33d60a1afaac763674271ce8163a0b9 Mon Sep 17 00:00:00 2001 From: LiShuzhen Date: Tue, 4 Nov 2025 10:12:12 +0800 Subject: [PATCH] fix: ykcn.valve.cbcs power property value unit (#1488) --- .../xiaomi_home/miot/miot_device.py | 1 + .../xiaomi_home/miot/specs/multi_lang.json | 6 ++ .../xiaomi_home/miot/specs/spec_modify.yaml | 95 +++++++++++++++++-- 3 files changed, 95 insertions(+), 7 deletions(-) diff --git a/custom_components/xiaomi_home/miot/miot_device.py b/custom_components/xiaomi_home/miot/miot_device.py index 671dd7c..524462a 100644 --- a/custom_components/xiaomi_home/miot/miot_device.py +++ b/custom_components/xiaomi_home/miot/miot_device.py @@ -747,6 +747,7 @@ class MIoTDevice: 'watt': UnitOfPower.WATT, 'w': UnitOfPower.WATT, 'W': UnitOfPower.WATT, + 'kW': UnitOfPower.KILO_WATT, 'kWh': UnitOfEnergy.KILO_WATT_HOUR, 'A': UnitOfElectricCurrent.AMPERE, 'mA': UnitOfElectricCurrent.MILLIAMPERE, diff --git a/custom_components/xiaomi_home/miot/specs/multi_lang.json b/custom_components/xiaomi_home/miot/specs/multi_lang.json index becd9e1..d8204c0 100644 --- a/custom_components/xiaomi_home/miot/specs/multi_lang.json +++ b/custom_components/xiaomi_home/miot/specs/multi_lang.json @@ -5,6 +5,12 @@ "service:003:property:001:valuelist:001": "Dry" } }, + "urn:miot-spec-v2:device:electronic-valve:0000A0A7:ykcn-cbcs": { + "zh-Hans": { + "service:004:property:001": "功率过高-阈值设置", + "service:004:property:009": "欠压告警-阈值设置" + } + }, "urn:miot-spec-v2:device:fan:0000A005:zhimi-za1": { "zh-Hans": { "service:002:property:005:valuelist:000": "自然风", diff --git a/custom_components/xiaomi_home/miot/specs/spec_modify.yaml b/custom_components/xiaomi_home/miot/specs/spec_modify.yaml index ad7a9a4..9a8c94e 100644 --- a/custom_components/xiaomi_home/miot/specs/spec_modify.yaml +++ b/custom_components/xiaomi_home/miot/specs/spec_modify.yaml @@ -125,11 +125,45 @@ urn:miot-spec-v2:device:curtain:0000A00C:bjkcz-kczble:1:0000D031: name: status-a urn:miot-spec-v2:device:electronic-valve:0000A0A7:sanmei-s1:1: prop.3.1: + format: float + value-range: + - 0 + - 99999999 + - 0.01 expr: round(src_value/100, 2) prop.3.2: + format: float + value-range: + - 0 + - 16777216 + - 0.01 expr: round(src_value/100, 2) prop.3.3: + format: float + value-range: + - 0 + - 65535 + - 0.1 expr: round(src_value/10, 1) +urn:miot-spec-v2:device:electronic-valve:0000A0A7:ykcn-cbcs:1:0000C833: + prop.3.1: + format: float + value-range: + - 0 + - 99999999 + - 0.01 + expr: round(src_value/100, 2) + prop.3.2: + unit: mA + prop.3.3: + format: float + value-range: + - 0 + - 65535 + - 0.1 + expr: round(src_value/10, 1) + prop.4.1: + unit: kW urn:miot-spec-v2:device:fan:0000A005:dmaker-p33:1: prop.2.2: name: fan-level-a @@ -263,29 +297,57 @@ urn:miot-spec-v2:device:outlet:0000A002:chuangmi-212a01:1: urn:miot-spec-v2:devi urn:miot-spec-v2:device:outlet:0000A002:chuangmi-212a01:2: urn:miot-spec-v2:device:outlet:0000A002:chuangmi-212a01:3 urn:miot-spec-v2:device:outlet:0000A002:chuangmi-212a01:3: prop.5.1: - expr: round(src_value*6/1000000, 3) + format: float + value-range: + - 0 + - 65535 + - 0.01 + expr: round(src_value*6/1000000, 2) urn:miot-spec-v2:device:outlet:0000A002:cuco-cp1md:1: prop.2.2: - name: power-consumption - expr: round(src_value/1000, 3) + format: float + value-range: + - 0 + - 65535 + - 0.01 + expr: round(src_value/1000, 2) prop.2.3: + format: float + value-range: + - 0 + - 3000 + - 0.1 expr: round(src_value/10, 1) prop.2.4: unit: mA urn:miot-spec-v2:device:outlet:0000A002:cuco-cp2:1: urn:miot-spec-v2:device:outlet:0000A002:cuco-cp2:2 urn:miot-spec-v2:device:outlet:0000A002:cuco-cp2:2: prop.2.3: + format: float + value-range: + - 0 + - 3000 + - 0.1 expr: round(src_value/10, 1) prop.2.4: unit: mA prop.3.2: + format: float + value-range: + - 0 + - 65535 + - 0.1 expr: round(src_value/10, 1) urn:miot-spec-v2:device:outlet:0000A002:cuco-cp2d:1: prop.3.2: - expr: round(src_value/1000, 2) + unit: mA urn:miot-spec-v2:device:outlet:0000A002:cuco-v3:1: prop.11.1: - name: power-consumption + format: float + value-range: + - 0 + - 65535 + - 0.01 expr: round(src_value/100, 2) urn:miot-spec-v2:device:outlet:0000A002:cuco-v3:2: urn:miot-spec-v2:device:outlet:0000A002:cuco-v3:1 urn:miot-spec-v2:device:outlet:0000A002:giot-v8icm:1:0000C816: @@ -298,11 +360,20 @@ urn:miot-spec-v2:device:outlet:0000A002:qmi-psv3:1:0000C816: unit: mA urn:miot-spec-v2:device:outlet:0000A002:yutai-fsov8m:1:0000C816: prop.4.1: + format: float + value-range: + - 0 + - 429497 + - 0.01 expr: round(src_value/10000, 2) urn:miot-spec-v2:device:outlet:0000A002:zimi-zncz01:1:0000C816: urn:miot-spec-v2:device:outlet:0000A002:zimi-zncz01:2:0000C816 urn:miot-spec-v2:device:outlet:0000A002:zimi-zncz01:2:0000C816: prop.3.1: - name: electric-power + format: float + value-range: + - 0 + - 350000 + - 0.01 expr: round(src_value/100, 2) urn:miot-spec-v2:device:plant-monitor:0000A030:hhcc-v1:1: prop.2.1: @@ -335,10 +406,20 @@ urn:miot-spec-v2:device:switch:0000A003:090615-x1tpm:1:0000D042: name: light-fan-on urn:miot-spec-v2:device:switch:0000A003:lxzn-cbcsmj:1:0000D00D: prop.3.1: + format: float + value-range: + - 0 + - 99999999 + - 0.01 expr: round(src_value/100, 2) prop.3.2: - expr: round(src_value/1000, 2) + unit: mA prop.3.3: + format: float + value-range: + - 0 + - 65535 + - 0.1 expr: round(src_value/10, 1) urn:miot-spec-v2:device:thermostat:0000A031:suittc-wk168:1: prop.2.3: