zigbee-herdsman-converters 25.26.0 → 25.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -0
- package/dist/devices/bosch.js +14 -14
- package/dist/devices/bosch.js.map +1 -1
- package/dist/devices/bseed.js +1 -1
- package/dist/devices/bseed.js.map +1 -1
- package/dist/devices/candeo.d.ts.map +1 -1
- package/dist/devices/candeo.js +42 -1
- package/dist/devices/candeo.js.map +1 -1
- package/dist/devices/gledopto.d.ts.map +1 -1
- package/dist/devices/gledopto.js +334 -0
- package/dist/devices/gledopto.js.map +1 -1
- package/dist/devices/imou.d.ts.map +1 -1
- package/dist/devices/imou.js +25 -0
- package/dist/devices/imou.js.map +1 -1
- package/dist/devices/legrand.d.ts.map +1 -1
- package/dist/devices/legrand.js +3 -33
- package/dist/devices/legrand.js.map +1 -1
- package/dist/devices/namron.d.ts.map +1 -1
- package/dist/devices/namron.js +15 -0
- package/dist/devices/namron.js.map +1 -1
- package/dist/devices/nodon.d.ts.map +1 -1
- package/dist/devices/nodon.js +15 -1
- package/dist/devices/nodon.js.map +1 -1
- package/dist/devices/philips.d.ts.map +1 -1
- package/dist/devices/philips.js +7 -0
- package/dist/devices/philips.js.map +1 -1
- package/dist/devices/samotech.d.ts.map +1 -1
- package/dist/devices/samotech.js +8 -0
- package/dist/devices/samotech.js.map +1 -1
- package/dist/devices/sunricher.d.ts.map +1 -1
- package/dist/devices/sunricher.js +1 -0
- package/dist/devices/sunricher.js.map +1 -1
- package/dist/devices/third_reality.d.ts.map +1 -1
- package/dist/devices/third_reality.js +1 -0
- package/dist/devices/third_reality.js.map +1 -1
- package/dist/devices/tuya.d.ts.map +1 -1
- package/dist/devices/tuya.js +250 -46
- package/dist/devices/tuya.js.map +1 -1
- package/dist/lib/bosch.d.ts +13 -3
- package/dist/lib/bosch.d.ts.map +1 -1
- package/dist/lib/bosch.js +258 -14
- package/dist/lib/bosch.js.map +1 -1
- package/dist/models-index.json +1 -1
- package/package.json +4 -4
package/dist/devices/tuya.js
CHANGED
|
@@ -4898,6 +4898,7 @@ exports.definitions = [
|
|
|
4898
4898
|
"_TZE284_b7kbnl6q",
|
|
4899
4899
|
"_TZE200_7shyddj3",
|
|
4900
4900
|
"_TZE204_a2jcoyuk",
|
|
4901
|
+
"_TZE204_ic7jtutb",
|
|
4901
4902
|
"_TZE204_zuq5xxib",
|
|
4902
4903
|
]),
|
|
4903
4904
|
...tuya.fingerprint("zo2pocs\u0000", ["_TYST11_fzo2pocs"]),
|
|
@@ -8628,70 +8629,121 @@ exports.definitions = [
|
|
|
8628
8629
|
fromZigbee: [tuya.fz.datapoints],
|
|
8629
8630
|
toZigbee: [tuya.tz.datapoints],
|
|
8630
8631
|
exposes: [
|
|
8631
|
-
//
|
|
8632
|
+
// Weekly Schedule (Datapoint 48) - Placeholder
|
|
8633
|
+
// The schedule is a raw 168-byte array (7 days x 24 bytes/day):
|
|
8634
|
+
// - Each day has up to 6 slots (4 bytes each): [Hour (1B), Minute (1B), Temp x10 (2B)]
|
|
8635
|
+
// - Empty slots: encoded as 00:00 time and 0°C temp (0x0000).
|
|
8636
|
+
// To implement:
|
|
8637
|
+
// - Converter 'from': Decode raw data into structured schedule (e.g., [{day, slots: [{time, temp}]}]).
|
|
8638
|
+
// - Converter 'to': Encode user input back into raw 168-byte buffer format.
|
|
8639
|
+
// Each timer can set the time in the 1st and 2nd bytes, and the temperature in the 3rd and 4th bytes.
|
|
8640
|
+
// There are 6 timers. The default time is 06:00 20°C; 08:00 15°C; 11:30 15°C; 13:30 15°C; 17:00 22°C; 22:00 15°C.
|
|
8641
|
+
// Each segment occupies 4 bytes. If the temperature contains decimals, the data must be expanded 10 times.
|
|
8642
|
+
// If it does not contain decimals, it will be transmitted normally.
|
|
8643
|
+
// For example, if it is 06:00 35.0, it will be transmitted as 06 00 01 5e. 6*4*3=72 bytes
|
|
8644
|
+
// Climate Control
|
|
8632
8645
|
e
|
|
8633
8646
|
.climate()
|
|
8634
|
-
.withSetpoint("current_heating_setpoint", 5, 35, 0.5, ea.STATE_SET)
|
|
8635
|
-
.withLocalTemperature(ea.STATE)
|
|
8636
|
-
.
|
|
8637
|
-
.
|
|
8638
|
-
|
|
8647
|
+
.withSetpoint("current_heating_setpoint", 5, 35, 0.5, ea.STATE_SET)
|
|
8648
|
+
.withLocalTemperature(ea.STATE)
|
|
8649
|
+
.withLocalTemperatureCalibration(-9.9, 9.9, 0.1, ea.STATE_SET)
|
|
8650
|
+
.withSystemMode(["off", "heat"], ea.STATE_SET)
|
|
8651
|
+
.withRunningState(["idle", "heat"], ea.STATE),
|
|
8652
|
+
// Expose local temperature as a sensor
|
|
8639
8653
|
e
|
|
8640
|
-
.
|
|
8641
|
-
.
|
|
8654
|
+
.numeric("local_temperature", ea.STATE)
|
|
8655
|
+
.withUnit("°C")
|
|
8656
|
+
.withDescription("Current temperature measured by the thermostat."),
|
|
8657
|
+
// Modes and Schedules
|
|
8658
|
+
e.enum("mode", ea.STATE_SET, ["manual", "program"]),
|
|
8659
|
+
e.enum("run_mode", ea.STATE_SET, ["heat_mode", "cool_mode"]).withDescription("Operation mode of the thermostat (heat or cool)."),
|
|
8660
|
+
e.enum("week_program_periods", ea.STATE, ["periods_4"]).withDescription("Number of program periods per week (read-only)."),
|
|
8661
|
+
// Features
|
|
8642
8662
|
e
|
|
8643
|
-
.binary("
|
|
8644
|
-
.withDescription("
|
|
8663
|
+
.binary("factory_reset", ea.STATE_SET, "ON", "OFF")
|
|
8664
|
+
.withDescription("WARNING: Restores the device to factory settings. All configurations will be lost."),
|
|
8665
|
+
e.binary("child_lock", ea.STATE_SET, "ON", "OFF").withDescription("Enables or disables the child lock feature."),
|
|
8666
|
+
e.enum("window_state", ea.STATE, ["open", "close"]).withDescription("Indicates whether the window is open or closed."),
|
|
8667
|
+
e.enum("working_status", ea.STATE, ["Keeping Warm", "Working"]).withDescription("Current working status of the thermostat."),
|
|
8668
|
+
e.binary("window_check", ea.STATE_SET, "ON", "OFF").withDescription("Checks whether the window is open or closed."),
|
|
8669
|
+
e.binary("frost_protection", ea.STATE_SET, "ON", "OFF").withDescription("Enables frost protection mode."),
|
|
8670
|
+
e.enum("sensor_choose", ea.STATE_SET, ["in", "out"]).withDescription("Selects between internal or external temperature sensors."),
|
|
8671
|
+
e.binary("humidity_control", ea.STATE_SET, "ON", "OFF").withDescription("Controls the humidity protection feature."),
|
|
8672
|
+
e.numeric("humidity", ea.STATE).withUnit("%").withDescription("Displays the current relative humidity level in percentage."),
|
|
8673
|
+
// Weekly Schedule
|
|
8645
8674
|
e
|
|
8646
|
-
.
|
|
8647
|
-
.
|
|
8648
|
-
|
|
8649
|
-
// Protection features
|
|
8675
|
+
.text("week_schedule", ea.STATE_SET)
|
|
8676
|
+
.withDescription('Weekly schedule: structured format like - Monday: [{"time":"06:30","temp":20.0},...].'),
|
|
8677
|
+
// Temperature and Control Adjustments
|
|
8650
8678
|
e
|
|
8651
|
-
.
|
|
8652
|
-
.
|
|
8679
|
+
.numeric("upper_temp", ea.STATE_SET)
|
|
8680
|
+
.withUnit("°C")
|
|
8681
|
+
.withValueMin(35)
|
|
8682
|
+
.withValueMax(95)
|
|
8683
|
+
.withValueStep(0.5)
|
|
8684
|
+
.withDescription("Set the upper temperature limit"),
|
|
8653
8685
|
e
|
|
8654
8686
|
.numeric("hysteresis", ea.STATE_SET)
|
|
8655
8687
|
.withUnit("°C")
|
|
8656
8688
|
.withValueMin(0.1)
|
|
8657
8689
|
.withValueMax(5)
|
|
8658
8690
|
.withValueStep(0.1)
|
|
8659
|
-
.withDescription("Hysteresis for heating/cooling cycle control."),
|
|
8660
|
-
// Calibration
|
|
8691
|
+
.withDescription("Hysteresis for heating/cooling cycle control."),
|
|
8661
8692
|
e
|
|
8662
|
-
.numeric("
|
|
8693
|
+
.numeric("temperature_correction", ea.STATE_SET)
|
|
8663
8694
|
.withUnit("°C")
|
|
8664
|
-
.withValueMin(-
|
|
8665
|
-
.withValueMax(
|
|
8666
|
-
.
|
|
8667
|
-
|
|
8695
|
+
.withValueMin(-9)
|
|
8696
|
+
.withValueMax(9)
|
|
8697
|
+
.withValueStep(1)
|
|
8698
|
+
.withDescription("Temperature calibration adjustment."),
|
|
8668
8699
|
e
|
|
8669
|
-
.
|
|
8670
|
-
.
|
|
8700
|
+
.numeric("switch_sensitivity", ea.STATE_SET)
|
|
8701
|
+
.withUnit("°C")
|
|
8702
|
+
.withValueMin(0.5)
|
|
8703
|
+
.withValueMax(5.0)
|
|
8704
|
+
.withValueStep(0.5)
|
|
8705
|
+
.withDescription("Temperature difference threshold to trigger switching."),
|
|
8671
8706
|
e
|
|
8672
|
-
.
|
|
8673
|
-
.
|
|
8674
|
-
|
|
8707
|
+
.numeric("floor_temp_protection", ea.STATE_SET)
|
|
8708
|
+
.withUnit("°C")
|
|
8709
|
+
.withValueMin(5.0)
|
|
8710
|
+
.withValueMax(60.0)
|
|
8711
|
+
.withValueStep(0.5)
|
|
8712
|
+
.withDescription("Maximum allowed floor temperature for protection."),
|
|
8675
8713
|
e
|
|
8676
|
-
.numeric("
|
|
8714
|
+
.numeric("floor_low_protection", ea.STATE_SET)
|
|
8677
8715
|
.withUnit("°C")
|
|
8678
|
-
.withValueMin(
|
|
8679
|
-
.withValueMax(
|
|
8680
|
-
.
|
|
8716
|
+
.withValueMin(10.0)
|
|
8717
|
+
.withValueMax(30.0)
|
|
8718
|
+
.withValueStep(0.5)
|
|
8719
|
+
.withDescription("Minimum allowed floor temperature for protection."),
|
|
8681
8720
|
],
|
|
8682
8721
|
meta: {
|
|
8683
8722
|
tuyaDatapoints: [
|
|
8684
|
-
[1, "
|
|
8685
|
-
[2, "
|
|
8686
|
-
[3, "
|
|
8687
|
-
[
|
|
8688
|
-
[
|
|
8689
|
-
[
|
|
8690
|
-
[
|
|
8691
|
-
[
|
|
8692
|
-
[
|
|
8693
|
-
[
|
|
8694
|
-
[
|
|
8723
|
+
[1, "switch", tuya.valueConverter.onOff],
|
|
8724
|
+
[2, "mode", tuya.valueConverterBasic.lookup({ manual: 0, program: 1 })],
|
|
8725
|
+
[3, "working_status", tuya.valueConverterBasic.lookup({ "Keeping Warm": 0, Working: 1 })],
|
|
8726
|
+
[8, "window_check", tuya.valueConverter.onOff],
|
|
8727
|
+
[10, "frost_protection", tuya.valueConverter.onOff],
|
|
8728
|
+
[16, "current_heating_setpoint", tuya.valueConverter.divideBy10],
|
|
8729
|
+
[19, "upper_temp", tuya.valueConverter.divideBy10],
|
|
8730
|
+
[24, "local_temperature", tuya.valueConverter.divideBy10],
|
|
8731
|
+
[25, "window_state", tuya.valueConverterBasic.lookup({ open: 1, close: 0 })],
|
|
8732
|
+
[27, "temperature_correction", tuya.valueConverter.raw],
|
|
8733
|
+
[34, "humidity", tuya.valueConverter.raw],
|
|
8734
|
+
[39, "factory_reset", tuya.valueConverter.onOff],
|
|
8735
|
+
[43, "sensor_choose", tuya.valueConverterBasic.lookup({ in: 0, out: 1 })],
|
|
8736
|
+
[48, "week_schedule", tuya.valueConverter.raw],
|
|
8737
|
+
[58, "run_mode", tuya.valueConverterBasic.lookup({ heat_mode: 1, cool_mode: 2 })],
|
|
8738
|
+
[61, "week_program_periods", tuya.valueConverterBasic.lookup({ periods_4: 1 })],
|
|
8739
|
+
[101, "switch_sensitivity", tuya.valueConverter.divideBy10],
|
|
8740
|
+
[102, "floor_temp_protection", tuya.valueConverter.divideBy10],
|
|
8741
|
+
[103, "floor_low_protection", tuya.valueConverter.divideBy10],
|
|
8742
|
+
[104, "window_open_detection_time", tuya.valueConverter.raw],
|
|
8743
|
+
[105, "window_open_detection_temp", tuya.valueConverter.raw],
|
|
8744
|
+
[106, "window_open_delay_time", tuya.valueConverter.raw],
|
|
8745
|
+
[107, "humidity_control", tuya.valueConverter.onOff],
|
|
8746
|
+
[108, "upper_humidity_limit", tuya.valueConverter.raw],
|
|
8695
8747
|
],
|
|
8696
8748
|
},
|
|
8697
8749
|
},
|
|
@@ -11618,7 +11670,7 @@ exports.definitions = [
|
|
|
11618
11670
|
whiteLabel: [tuya.whitelabel("Homeetec", "37022714", "4 Gang switch with backlight", ["_TZE200_hewlydpz"])],
|
|
11619
11671
|
},
|
|
11620
11672
|
{
|
|
11621
|
-
fingerprint: tuya.fingerprint("TS0601", ["_TZE200_p6vz3wzt"]),
|
|
11673
|
+
fingerprint: tuya.fingerprint("TS0601", ["_TZE200_p6vz3wzt", "_TZE284_uqfph8ah"]),
|
|
11622
11674
|
model: "TS0601_cover_5",
|
|
11623
11675
|
vendor: "Tuya",
|
|
11624
11676
|
description: "Curtain/blind switch",
|
|
@@ -11664,7 +11716,10 @@ exports.definitions = [
|
|
|
11664
11716
|
[103, "child_lock", tuya.valueConverter.onOff],
|
|
11665
11717
|
],
|
|
11666
11718
|
},
|
|
11667
|
-
whiteLabel: [
|
|
11719
|
+
whiteLabel: [
|
|
11720
|
+
tuya.whitelabel("Homeetec", "37022483", "Curtain/blind switch", ["_TZE200_p6vz3wzt"]),
|
|
11721
|
+
tuya.whitelabel("BSEED", "_TZE284_uqfph8ah", "Curtain/blind switch", ["_TZE284_uqfph8ah"]),
|
|
11722
|
+
],
|
|
11668
11723
|
},
|
|
11669
11724
|
{
|
|
11670
11725
|
zigbeeModel: ["TS030F"],
|
|
@@ -18722,10 +18777,11 @@ exports.definitions = [
|
|
|
18722
18777
|
},
|
|
18723
18778
|
},
|
|
18724
18779
|
{
|
|
18725
|
-
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_pglpvdar"]),
|
|
18780
|
+
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_pglpvdar", "_TZE284_4hdbt6rn"]),
|
|
18726
18781
|
model: "TO-Q-SA1",
|
|
18727
18782
|
vendor: "Tongou",
|
|
18728
18783
|
description: "Zigbee energy meter (transformer clamp)",
|
|
18784
|
+
whiteLabel: [tuya.whitelabel("Tongou", "TOSA1-01WXJAT2A", "Smart energy meter, two wire", ["_TZE284_4hdbt6rn"])],
|
|
18729
18785
|
fromZigbee: [tuya.fz.datapoints],
|
|
18730
18786
|
toZigbee: [tuya.tz.datapoints],
|
|
18731
18787
|
exposes: [
|
|
@@ -18934,6 +18990,154 @@ exports.definitions = [
|
|
|
18934
18990
|
m.onOff({ powerOnBehavior: false, endpointNames: ["1", "2", "3", "4"] }),
|
|
18935
18991
|
],
|
|
18936
18992
|
},
|
|
18993
|
+
{
|
|
18994
|
+
fingerprint: tuya.fingerprint("TS0601", ["_TZE204_3regm3h6"]),
|
|
18995
|
+
model: "_TZE204_3regm3h6",
|
|
18996
|
+
vendor: "Tuya",
|
|
18997
|
+
description: "Smart thermostat for electric radiator with pilot wire",
|
|
18998
|
+
extend: [tuya.modernExtend.tuyaBase({ dp: true })],
|
|
18999
|
+
exposes: [
|
|
19000
|
+
e.binary("state", ea.STATE_SET, "ON", "OFF").withDescription("Turn the heater on or off").withCategory("config"),
|
|
19001
|
+
e.child_lock(),
|
|
19002
|
+
e
|
|
19003
|
+
.climate()
|
|
19004
|
+
.withSetpoint("current_heating_setpoint", 5, 35, 0.5, ea.STATE_SET)
|
|
19005
|
+
.withLocalTemperature(ea.STATE)
|
|
19006
|
+
.withLocalTemperatureCalibration(-9, 9, 1, ea.STATE_SET)
|
|
19007
|
+
.withSystemMode(["off", "heat"], ea.STATE)
|
|
19008
|
+
.withPreset(["comfort", "eco", "antifrost", "off", "comfort_1", "comfort_2", "program", "manual"]),
|
|
19009
|
+
e
|
|
19010
|
+
.enum("mode", ea.STATE, ["comfort", "eco", "antifrost", "off", "comfort_1", "comfort_2", "program", "manual"])
|
|
19011
|
+
.withDescription("Current running mode")
|
|
19012
|
+
.withCategory("diagnostic"),
|
|
19013
|
+
e
|
|
19014
|
+
.numeric("comfort_temperature", ea.STATE_SET)
|
|
19015
|
+
.withUnit(" C")
|
|
19016
|
+
.withValueMin(5)
|
|
19017
|
+
.withValueMax(35)
|
|
19018
|
+
.withValueStep(0.5)
|
|
19019
|
+
.withDescription("Set comfort temperature")
|
|
19020
|
+
.withCategory("config"),
|
|
19021
|
+
e
|
|
19022
|
+
.numeric("eco_temperature", ea.STATE_SET)
|
|
19023
|
+
.withUnit(" C")
|
|
19024
|
+
.withValueMin(5)
|
|
19025
|
+
.withValueMax(30)
|
|
19026
|
+
.withValueStep(0.5)
|
|
19027
|
+
.withDescription("Set ECO temperature")
|
|
19028
|
+
.withCategory("config"),
|
|
19029
|
+
e
|
|
19030
|
+
.numeric("antifrost_temperature", ea.STATE_SET)
|
|
19031
|
+
.withUnit(" C")
|
|
19032
|
+
.withValueMin(5)
|
|
19033
|
+
.withValueMax(15)
|
|
19034
|
+
.withValueStep(0.5)
|
|
19035
|
+
.withDescription("Set antifrost temperature")
|
|
19036
|
+
.withCategory("config"),
|
|
19037
|
+
e
|
|
19038
|
+
.numeric("temperature_sensibility", ea.STATE_SET)
|
|
19039
|
+
.withUnit(" C")
|
|
19040
|
+
.withValueMin(0.5)
|
|
19041
|
+
.withValueMax(5)
|
|
19042
|
+
.withValueStep(0.5)
|
|
19043
|
+
.withDescription("Set thermostat sensitivity")
|
|
19044
|
+
.withCategory("config"),
|
|
19045
|
+
e.binary("antifrost", ea.STATE_SET, "ON", "OFF").withDescription("Enable antifrost protection feature").withCategory("config"),
|
|
19046
|
+
e
|
|
19047
|
+
.binary("window_detection", ea.STATE_SET, "ON", "OFF")
|
|
19048
|
+
.withLabel("Open window detection")
|
|
19049
|
+
.withDescription("Enable / Disable open window detection feature")
|
|
19050
|
+
.withCategory("config"),
|
|
19051
|
+
e.enum("window", ea.STATE, ["close", "open"]).withDescription("Indicates if window is open").withCategory("diagnostic"),
|
|
19052
|
+
e.power(),
|
|
19053
|
+
e.voltage(),
|
|
19054
|
+
e.current(),
|
|
19055
|
+
e.energy(),
|
|
19056
|
+
e.energy().withProperty("energy_today").withDescription("Energy consumed today"),
|
|
19057
|
+
e.energy().withProperty("energy_yesterday").withDescription("Energy consumed yesterday"),
|
|
19058
|
+
e
|
|
19059
|
+
.enum("device_mode_type", ea.STATE, ["four", "six", "switch"])
|
|
19060
|
+
.withDescription("Indicates the actual pilot wire mode of the thermostat")
|
|
19061
|
+
.withCategory("diagnostic"),
|
|
19062
|
+
],
|
|
19063
|
+
meta: {
|
|
19064
|
+
tuyaDatapoints: [
|
|
19065
|
+
[1, "state", tuya.valueConverter.onOff],
|
|
19066
|
+
[1, "system_mode", tuya.valueConverterBasic.lookup({ heat: true, off: false })],
|
|
19067
|
+
[
|
|
19068
|
+
2,
|
|
19069
|
+
"mode",
|
|
19070
|
+
tuya.valueConverterBasic.lookup({
|
|
19071
|
+
comfort: tuya.enum(0),
|
|
19072
|
+
eco: tuya.enum(1),
|
|
19073
|
+
antifrost: tuya.enum(2),
|
|
19074
|
+
off: tuya.enum(3),
|
|
19075
|
+
comfort_1: tuya.enum(4),
|
|
19076
|
+
comfort_2: tuya.enum(5),
|
|
19077
|
+
program: tuya.enum(6),
|
|
19078
|
+
manual: tuya.enum(7),
|
|
19079
|
+
}),
|
|
19080
|
+
],
|
|
19081
|
+
[
|
|
19082
|
+
2,
|
|
19083
|
+
"preset",
|
|
19084
|
+
tuya.valueConverterBasic.lookup({
|
|
19085
|
+
comfort: tuya.enum(0),
|
|
19086
|
+
eco: tuya.enum(1),
|
|
19087
|
+
antifrost: tuya.enum(2),
|
|
19088
|
+
off: tuya.enum(3),
|
|
19089
|
+
comfort_1: tuya.enum(4),
|
|
19090
|
+
comfort_2: tuya.enum(5),
|
|
19091
|
+
program: tuya.enum(6),
|
|
19092
|
+
manual: tuya.enum(7),
|
|
19093
|
+
}),
|
|
19094
|
+
],
|
|
19095
|
+
[11, "power", tuya.valueConverter.raw],
|
|
19096
|
+
[16, "local_temperature", tuya.valueConverter.divideBy10],
|
|
19097
|
+
[
|
|
19098
|
+
17,
|
|
19099
|
+
"window",
|
|
19100
|
+
tuya.valueConverterBasic.lookup({
|
|
19101
|
+
close: tuya.enum(0),
|
|
19102
|
+
open: tuya.enum(1),
|
|
19103
|
+
}),
|
|
19104
|
+
],
|
|
19105
|
+
[19, "local_temperature_calibration", tuya.valueConverter.localTempCalibration2],
|
|
19106
|
+
[20, "fault", tuya.valueConverter.raw],
|
|
19107
|
+
[29, "window_detection", tuya.valueConverter.onOff],
|
|
19108
|
+
[39, "child_lock", tuya.valueConverter.lockUnlock],
|
|
19109
|
+
[50, "current_heating_setpoint", tuya.valueConverter.divideBy10],
|
|
19110
|
+
[101, "voltage", tuya.valueConverter.divideBy10],
|
|
19111
|
+
[102, "current", tuya.valueConverter.divideBy1000],
|
|
19112
|
+
[103, "temperature_sensibility", tuya.valueConverter.divideBy10],
|
|
19113
|
+
[104, "energy_today", tuya.valueConverter.raw],
|
|
19114
|
+
[105, "energy_yesterday", tuya.valueConverter.raw],
|
|
19115
|
+
[
|
|
19116
|
+
106,
|
|
19117
|
+
"device_mode_type",
|
|
19118
|
+
tuya.valueConverterBasic.lookup({
|
|
19119
|
+
four: tuya.enum(0),
|
|
19120
|
+
six: tuya.enum(1),
|
|
19121
|
+
switch: tuya.enum(2),
|
|
19122
|
+
}),
|
|
19123
|
+
],
|
|
19124
|
+
[107, "energy", tuya.valueConverter.raw],
|
|
19125
|
+
[108, "week_program_1", tuya.valueConverter.raw],
|
|
19126
|
+
[109, "week_program_2", tuya.valueConverter.raw],
|
|
19127
|
+
[110, "week_program_3", tuya.valueConverter.raw],
|
|
19128
|
+
[111, "week_program_4", tuya.valueConverter.raw],
|
|
19129
|
+
[112, "week_program_5", tuya.valueConverter.raw],
|
|
19130
|
+
[113, "week_program_6", tuya.valueConverter.raw],
|
|
19131
|
+
[114, "week_program_7", tuya.valueConverter.raw],
|
|
19132
|
+
[115, "set_temp_switch", tuya.valueConverter.onOff],
|
|
19133
|
+
[116, "antifrost", tuya.valueConverter.onOff],
|
|
19134
|
+
[117, "eco_temperature", tuya.valueConverter.divideBy10],
|
|
19135
|
+
[118, "comfort_temperature", tuya.valueConverter.divideBy10],
|
|
19136
|
+
[119, "antifrost_temperature", tuya.valueConverter.divideBy10],
|
|
19137
|
+
[120, "light", tuya.valueConverter.raw],
|
|
19138
|
+
],
|
|
19139
|
+
},
|
|
19140
|
+
},
|
|
18937
19141
|
{
|
|
18938
19142
|
fingerprint: tuya.fingerprint("TS0601", ["_TZE284_r3szw0xr"]),
|
|
18939
19143
|
model: "TS0601_cover_11",
|