zigbee-herdsman-converters 20.36.0 → 20.38.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/devices/amina.d.ts +4 -0
- package/devices/amina.d.ts.map +1 -0
- package/devices/amina.js +361 -0
- package/devices/amina.js.map +1 -0
- package/devices/develco.d.ts.map +1 -1
- package/devices/develco.js +13 -10
- package/devices/develco.js.map +1 -1
- package/devices/easyiot.d.ts.map +1 -1
- package/devices/easyiot.js +164 -0
- package/devices/easyiot.js.map +1 -1
- package/devices/ikea.js +1 -1
- package/devices/ikea.js.map +1 -1
- package/devices/index.d.ts.map +1 -1
- package/devices/index.js +2 -0
- package/devices/index.js.map +1 -1
- package/devices/linptech.d.ts.map +1 -1
- package/devices/linptech.js +11 -2
- package/devices/linptech.js.map +1 -1
- package/devices/neo.d.ts.map +1 -1
- package/devices/neo.js +8 -0
- package/devices/neo.js.map +1 -1
- package/devices/nous.d.ts.map +1 -1
- package/devices/nous.js +1 -0
- package/devices/nous.js.map +1 -1
- package/devices/philips.d.ts.map +1 -1
- package/devices/philips.js +15 -1
- package/devices/philips.js.map +1 -1
- package/devices/tuya.d.ts.map +1 -1
- package/devices/tuya.js +281 -26
- package/devices/tuya.js.map +1 -1
- package/lib/tuya.d.ts +7 -0
- package/lib/tuya.d.ts.map +1 -1
- package/lib/tuya.js +38 -0
- package/lib/tuya.js.map +1 -1
- package/package.json +6 -6
package/devices/tuya.js
CHANGED
|
@@ -2525,11 +2525,12 @@ const definitions = [
|
|
|
2525
2525
|
],
|
|
2526
2526
|
meta: { coverInverted: true },
|
|
2527
2527
|
whiteLabel: [
|
|
2528
|
-
{ vendor: 'LoraTap', model: 'SC400' },
|
|
2529
|
-
tuya.whitelabel('Zemismart', 'ZN-LC1E', 'Smart curtain/shutter switch', ['_TZ3000_74hsp7qy']),
|
|
2530
|
-
tuya.whitelabel('Nous', 'L12Z', 'Smart ZigBee Curtain Module L12Z', ['_TZ3000_jwv3cwak']),
|
|
2531
2528
|
tuya.whitelabel('Danor', 'SK-Z802C-US', 'Smart curtain/shutter switch', ['_TZ3000_8h7wgocw']),
|
|
2529
|
+
{ vendor: 'LoraTap', model: 'SC400' },
|
|
2530
|
+
tuya.whitelabel('LoraTap', 'SC500ZB', 'Roller Shutter Blind Module', ['_TZ3000_e3vhyirx']),
|
|
2532
2531
|
tuya.whitelabel('Nous', 'B4Z', 'Curtain switch', ['_TZ3000_yruungrl']),
|
|
2532
|
+
tuya.whitelabel('Nous', 'L12Z', 'Smart ZigBee Curtain Module L12Z', ['_TZ3000_jwv3cwak']),
|
|
2533
|
+
tuya.whitelabel('Zemismart', 'ZN-LC1E', 'Smart curtain/shutter switch', ['_TZ3000_74hsp7qy']),
|
|
2533
2534
|
],
|
|
2534
2535
|
exposes: (device) => {
|
|
2535
2536
|
const exps = [
|
|
@@ -2543,7 +2544,7 @@ const definitions = [
|
|
|
2543
2544
|
else {
|
|
2544
2545
|
exps.push(e.binary('calibration_up', ea.ALL, 'ON', 'OFF'), e.numeric('calibration_time_up', ea.STATE).withUnit('s').withDescription('Calibration time up'), e.binary('calibration_down', ea.ALL, 'ON', 'OFF'), e.numeric('calibration_time_down', ea.STATE).withUnit('s').withDescription('Calibration time down'));
|
|
2545
2546
|
}
|
|
2546
|
-
if (device?.manufacturerName !== '_TZ3210_xbpt8ewc') {
|
|
2547
|
+
if (device?.manufacturerName !== '_TZ3210_xbpt8ewc' && device?.manufacturerName !== '_TZ3000_e3vhyirx') {
|
|
2547
2548
|
exps.push(tuya.exposes.indicatorMode(), tuya.exposes.backlightModeOffOn());
|
|
2548
2549
|
}
|
|
2549
2550
|
exps.push(e.linkquality());
|
|
@@ -4422,6 +4423,7 @@ const definitions = [
|
|
|
4422
4423
|
'_TZE200_7yoranx2' /* model: 'TV01-ZB', vendor: 'Moes' */,
|
|
4423
4424
|
'_TZE200_kds0pmmv',
|
|
4424
4425
|
'_TZE200_py4cm3he' /* model: 'TV06-Zigbee', vendor: 'Tuya' */,
|
|
4426
|
+
'_TZE200_wsbfwodu' /* model: 'HA-08 THERMO', vendor: 'AlecoAir' */,
|
|
4425
4427
|
]),
|
|
4426
4428
|
model: 'TV02-Zigbee',
|
|
4427
4429
|
vendor: 'Tuya',
|
|
@@ -4434,6 +4436,7 @@ const definitions = [
|
|
|
4434
4436
|
{ vendor: 'Unknown/id3.pl', model: 'GTZ08' },
|
|
4435
4437
|
tuya.whitelabel('Moes', 'ZTRV-ZX-TV01-MS', 'Thermostat radiator valve', ['_TZE200_7yoranx2']),
|
|
4436
4438
|
tuya.whitelabel('Moes', 'TV01-ZB', 'Thermostat radiator valve', ['_TZE200_e9ba97vf']),
|
|
4439
|
+
tuya.whitelabel('AlecoAir', 'HA-08_THERMO', 'Thermostat radiator valve', ['_TZE200_wsbfwodu']),
|
|
4437
4440
|
],
|
|
4438
4441
|
ota: ota.zigbeeOTA,
|
|
4439
4442
|
fromZigbee: [tuya.fz.datapoints],
|
|
@@ -5600,6 +5603,131 @@ const definitions = [
|
|
|
5600
5603
|
]),
|
|
5601
5604
|
],
|
|
5602
5605
|
},
|
|
5606
|
+
{
|
|
5607
|
+
fingerprint: tuya.fingerprint('TS0601', ['_TZE204_m64smti7']),
|
|
5608
|
+
model: 'RMDZB-1PNL63',
|
|
5609
|
+
vendor: 'TNCE',
|
|
5610
|
+
description: 'Zigbee DIN single phase RCBO energy meter',
|
|
5611
|
+
fromZigbee: [tuya.fz.datapoints],
|
|
5612
|
+
toZigbee: [tuya.tz.datapoints],
|
|
5613
|
+
configure: tuya.configureMagicPacket,
|
|
5614
|
+
exposes: [
|
|
5615
|
+
tuya.exposes.switch(),
|
|
5616
|
+
e.energy(),
|
|
5617
|
+
e
|
|
5618
|
+
.enum('fault', ea.STATE, [
|
|
5619
|
+
'clear',
|
|
5620
|
+
'short_circuit_alarm',
|
|
5621
|
+
'surge_alarm',
|
|
5622
|
+
'overload_alarm',
|
|
5623
|
+
'leakagecurr_alarm',
|
|
5624
|
+
'temp_dif_fault',
|
|
5625
|
+
'fire_alarm',
|
|
5626
|
+
'high_power_alarm',
|
|
5627
|
+
'self_test_alarm',
|
|
5628
|
+
'ov_cr',
|
|
5629
|
+
'unbalance_alarm',
|
|
5630
|
+
'ov_vol',
|
|
5631
|
+
'undervoltage_alarm',
|
|
5632
|
+
'miss_phase_alarm',
|
|
5633
|
+
'outage_alarm',
|
|
5634
|
+
'magnetism_alarm',
|
|
5635
|
+
'credit_alarm',
|
|
5636
|
+
'no_balance_alarm',
|
|
5637
|
+
])
|
|
5638
|
+
.withDescription('Fault status of the device (clear = nothing)'),
|
|
5639
|
+
tuya.exposes.voltageWithPhase('a'),
|
|
5640
|
+
tuya.exposes.powerWithPhase('a'),
|
|
5641
|
+
tuya.exposes.currentWithPhase('a'),
|
|
5642
|
+
e.temperature(),
|
|
5643
|
+
e
|
|
5644
|
+
.binary('over_current_breaker', ea.STATE_SET, 'ON', 'OFF')
|
|
5645
|
+
.withDescription('OFF - alarm only, ON - relay will turn off when threshold reached'),
|
|
5646
|
+
e
|
|
5647
|
+
.numeric('over_current_threshold', ea.STATE_SET)
|
|
5648
|
+
.withUnit('A')
|
|
5649
|
+
.withDescription('Setup the value on the device')
|
|
5650
|
+
.withValueMin(1)
|
|
5651
|
+
.withValueMax(63),
|
|
5652
|
+
e
|
|
5653
|
+
.binary('over_voltage_breaker', ea.STATE_SET, 'ON', 'OFF')
|
|
5654
|
+
.withDescription('OFF - alarm only, ON - relay will turn off when threshold reached'),
|
|
5655
|
+
e
|
|
5656
|
+
.numeric('over_voltage_threshold', ea.STATE_SET)
|
|
5657
|
+
.withUnit('V')
|
|
5658
|
+
.withDescription('Setup value on the device')
|
|
5659
|
+
.withValueMin(250)
|
|
5660
|
+
.withValueMax(300),
|
|
5661
|
+
e
|
|
5662
|
+
.binary('under_voltage_breaker', ea.STATE_SET, 'ON', 'OFF')
|
|
5663
|
+
.withDescription('OFF - alarm only, ON - relay will turn off when threshold reached'),
|
|
5664
|
+
e
|
|
5665
|
+
.numeric('under_voltage_threshold', ea.STATE_SET)
|
|
5666
|
+
.withUnit('V')
|
|
5667
|
+
.withDescription('Setup value on the device')
|
|
5668
|
+
.withValueMin(150)
|
|
5669
|
+
.withValueMax(200),
|
|
5670
|
+
e
|
|
5671
|
+
.binary('high_temperature_breaker', ea.STATE_SET, 'ON', 'OFF')
|
|
5672
|
+
.withDescription('OFF - alarm only, ON - relay will turn off when threshold reached'),
|
|
5673
|
+
e
|
|
5674
|
+
.numeric('high_temperature_threshold', ea.STATE_SET)
|
|
5675
|
+
.withUnit('°C')
|
|
5676
|
+
.withDescription('Setup value on the device')
|
|
5677
|
+
.withValueMin(40)
|
|
5678
|
+
.withValueMax(100),
|
|
5679
|
+
],
|
|
5680
|
+
meta: {
|
|
5681
|
+
tuyaDatapoints: [
|
|
5682
|
+
[1, 'energy', tuya.valueConverter.divideBy100],
|
|
5683
|
+
[6, null, tuya.valueConverter.phaseVariant2WithPhase('a')],
|
|
5684
|
+
[
|
|
5685
|
+
9,
|
|
5686
|
+
'fault',
|
|
5687
|
+
tuya.valueConverterBasic.lookup({
|
|
5688
|
+
clear: 0,
|
|
5689
|
+
short_circuit_alarm: 1,
|
|
5690
|
+
surge_alarm: 2,
|
|
5691
|
+
overload_alarm: 4,
|
|
5692
|
+
leakagecurr_alarm: 8,
|
|
5693
|
+
temp_dif_fault: 16,
|
|
5694
|
+
fire_alarm: 32,
|
|
5695
|
+
high_power_alarm: 64,
|
|
5696
|
+
self_test_alarm: 128,
|
|
5697
|
+
ov_cr: 256,
|
|
5698
|
+
unbalance_alarm: 512,
|
|
5699
|
+
ov_vol: 1024,
|
|
5700
|
+
undervoltage_alarm: 2048,
|
|
5701
|
+
miss_phase_alarm: 4096,
|
|
5702
|
+
outage_alarm: 8192,
|
|
5703
|
+
magnetism_alarm: 16384,
|
|
5704
|
+
credit_alarm: 32768,
|
|
5705
|
+
no_balance_alarm: 65536,
|
|
5706
|
+
}),
|
|
5707
|
+
],
|
|
5708
|
+
[16, 'state', tuya.valueConverter.onOff],
|
|
5709
|
+
[17, null, tuya.valueConverter.threshold_2],
|
|
5710
|
+
[17, 'high_temperature_threshold', tuya.valueConverter.threshold_2],
|
|
5711
|
+
[17, 'high_temperature_breaker', tuya.valueConverter.threshold_2],
|
|
5712
|
+
[18, null, tuya.valueConverter.threshold_3],
|
|
5713
|
+
[18, 'over_current_threshold', tuya.valueConverter.threshold_3],
|
|
5714
|
+
[18, 'over_current_breaker', tuya.valueConverter.threshold_3],
|
|
5715
|
+
[18, 'over_voltage_threshold', tuya.valueConverter.threshold_3],
|
|
5716
|
+
[18, 'over_voltage_breaker', tuya.valueConverter.threshold_3],
|
|
5717
|
+
[18, 'under_voltage_threshold', tuya.valueConverter.threshold_3],
|
|
5718
|
+
[18, 'under_voltage_breaker', tuya.valueConverter.threshold_3],
|
|
5719
|
+
[103, 'temperature', tuya.valueConverter.divideBy10],
|
|
5720
|
+
// Ignored for now; we don't know what the values mean
|
|
5721
|
+
[11, null, null], // Switch prepayment
|
|
5722
|
+
[12, null, null], // Energy reset
|
|
5723
|
+
[13, null, null], // Balance enertgy
|
|
5724
|
+
[14, null, null], // Charge energy
|
|
5725
|
+
[105, null, null], // Countdown
|
|
5726
|
+
[106, null, null], // Cycle time
|
|
5727
|
+
],
|
|
5728
|
+
},
|
|
5729
|
+
whiteLabel: [{ vendor: 'TNCE', model: 'RMDZB-1PNL63' }],
|
|
5730
|
+
},
|
|
5603
5731
|
{
|
|
5604
5732
|
fingerprint: tuya.fingerprint('TS0601', ['_TZE204_wbhaespm']),
|
|
5605
5733
|
model: 'STB3L-125-ZJ',
|
|
@@ -6753,10 +6881,10 @@ const definitions = [
|
|
|
6753
6881
|
model: 'TS0222_light',
|
|
6754
6882
|
vendor: 'Tuya',
|
|
6755
6883
|
description: 'Light sensor',
|
|
6756
|
-
fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.
|
|
6884
|
+
fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.illuminance],
|
|
6757
6885
|
toZigbee: [],
|
|
6758
6886
|
configure: tuya.configureMagicPacket,
|
|
6759
|
-
exposes: [e.battery(), e.illuminance()],
|
|
6887
|
+
exposes: [e.battery(), e.illuminance(), e.illuminance_lux()],
|
|
6760
6888
|
},
|
|
6761
6889
|
{
|
|
6762
6890
|
fingerprint: tuya.fingerprint('TS0222', ['_TZ3000_t9qqxn70']),
|
|
@@ -6868,7 +6996,7 @@ const definitions = [
|
|
|
6868
6996
|
],
|
|
6869
6997
|
},
|
|
6870
6998
|
{
|
|
6871
|
-
fingerprint:
|
|
6999
|
+
fingerprint: tuya.fingerprint('TS011F', ['_TZ3000_qeuvnohg', '_TZ3000_6l1pjfqe']),
|
|
6872
7000
|
model: 'TS011F_din_smart_relay_polling',
|
|
6873
7001
|
description: 'Din smart relay (with power monitoring via polling)',
|
|
6874
7002
|
vendor: 'Tuya',
|
|
@@ -8399,10 +8527,7 @@ const definitions = [
|
|
|
8399
8527
|
},
|
|
8400
8528
|
},
|
|
8401
8529
|
{
|
|
8402
|
-
fingerprint: [
|
|
8403
|
-
{ modelID: 'TS110E', manufacturerName: '_TZ3210_wdexaypg' },
|
|
8404
|
-
{ modelID: 'TS110E', manufacturerName: '_TZ3210_3mpwqzuu' },
|
|
8405
|
-
],
|
|
8530
|
+
fingerprint: [{ modelID: 'TS110E', manufacturerName: '_TZ3210_wdexaypg' }],
|
|
8406
8531
|
model: 'TS110E_2gang_1',
|
|
8407
8532
|
vendor: 'Tuya',
|
|
8408
8533
|
description: '2 channel dimmer',
|
|
@@ -8424,7 +8549,7 @@ const definitions = [
|
|
|
8424
8549
|
],
|
|
8425
8550
|
},
|
|
8426
8551
|
{
|
|
8427
|
-
fingerprint: tuya.fingerprint('TS110E', ['_TZ3210_pagajpog', '_TZ3210_4ubylghk', '_TZ3210_vfwhhldz']),
|
|
8552
|
+
fingerprint: tuya.fingerprint('TS110E', ['_TZ3210_pagajpog', '_TZ3210_4ubylghk', '_TZ3210_vfwhhldz', '_TZ3210_3mpwqzuu']),
|
|
8428
8553
|
model: 'TS110E_2gang_2',
|
|
8429
8554
|
vendor: 'Tuya',
|
|
8430
8555
|
description: '2 channel dimmer',
|
|
@@ -10280,36 +10405,49 @@ const definitions = [
|
|
|
10280
10405
|
toZigbee: [tuya.tz.datapoints],
|
|
10281
10406
|
configure: tuya.configureMagicPacket,
|
|
10282
10407
|
exposes: [
|
|
10283
|
-
e.enum('state', ea.STATE, ['none', 'presence', 'move']).withDescription('Presence state
|
|
10284
|
-
e.
|
|
10285
|
-
e.numeric('distance', ea.STATE).withDescription('Target distance'),
|
|
10286
|
-
e.illuminance_lux()
|
|
10287
|
-
e.numeric('move_sensitivity', ea.STATE_SET).withValueMin(1).withValueMax(10).withValueStep(1).withDescription('Motion sensitivity'),
|
|
10288
|
-
e.numeric('presence_sensitivity', ea.STATE_SET).withValueMin(1).withValueMax(10).withValueStep(1).withDescription('Presence sensitivity'),
|
|
10408
|
+
e.enum('state', ea.STATE, ['none', 'presence', 'move']).withDescription('Presence state'),
|
|
10409
|
+
e.occupancy(),
|
|
10410
|
+
e.numeric('distance', ea.STATE).withUnit('m').withDescription('Target distance'),
|
|
10411
|
+
e.illuminance_lux(),
|
|
10289
10412
|
e
|
|
10290
|
-
.numeric('
|
|
10413
|
+
.numeric('motion_sensitivity', ea.STATE_SET)
|
|
10414
|
+
.withValueMin(1)
|
|
10415
|
+
.withValueMax(10)
|
|
10416
|
+
.withValueStep(1)
|
|
10417
|
+
.withCategory('config')
|
|
10418
|
+
.withDescription('Motion sensitivity'),
|
|
10419
|
+
e
|
|
10420
|
+
.numeric('occupancy_sensitivity', ea.STATE_SET)
|
|
10421
|
+
.withValueMin(1)
|
|
10422
|
+
.withValueMax(10)
|
|
10423
|
+
.withValueStep(1)
|
|
10424
|
+
.withCategory('config')
|
|
10425
|
+
.withDescription('Occupancy sensitivity'),
|
|
10426
|
+
e
|
|
10427
|
+
.numeric('max_range', ea.STATE_SET)
|
|
10291
10428
|
.withValueMin(1.5)
|
|
10292
10429
|
.withValueMax(5.5)
|
|
10293
10430
|
.withValueStep(1)
|
|
10294
10431
|
.withUnit('m')
|
|
10432
|
+
.withCategory('config')
|
|
10295
10433
|
.withDescription('Maximum range'),
|
|
10296
10434
|
e
|
|
10297
|
-
.numeric('
|
|
10435
|
+
.numeric('occupancy_timeout', ea.STATE_SET)
|
|
10298
10436
|
.withValueMin(1)
|
|
10299
10437
|
.withValueMax(1500)
|
|
10300
10438
|
.withValueStep(1)
|
|
10301
10439
|
.withUnit('s')
|
|
10302
|
-
.withDescription('
|
|
10440
|
+
.withDescription('Occupancy timeout'),
|
|
10303
10441
|
],
|
|
10304
10442
|
meta: {
|
|
10305
10443
|
multiEndpoint: true,
|
|
10306
10444
|
tuyaDatapoints: [
|
|
10307
|
-
[112, '
|
|
10308
|
-
[106, '
|
|
10309
|
-
[111, '
|
|
10310
|
-
[107, '
|
|
10445
|
+
[112, 'occupancy', tuya.valueConverter.trueFalse1],
|
|
10446
|
+
[106, 'motion_sensitivity', tuya.valueConverter.raw],
|
|
10447
|
+
[111, 'occupancy_sensitivity', tuya.valueConverter.raw],
|
|
10448
|
+
[107, 'max_range', tuya.valueConverter.divideBy100],
|
|
10311
10449
|
[109, 'distance', tuya.valueConverter.divideBy100],
|
|
10312
|
-
[110, '
|
|
10450
|
+
[110, 'occupancy_timeout', tuya.valueConverter.raw],
|
|
10313
10451
|
[104, 'illuminance_lux', tuya.valueConverter.raw],
|
|
10314
10452
|
[102, 'illuminance_treshold_max', tuya.valueConverter.raw],
|
|
10315
10453
|
[103, 'illuminance_treshold_min', tuya.valueConverter.raw],
|
|
@@ -12370,6 +12508,123 @@ const definitions = [
|
|
|
12370
12508
|
],
|
|
12371
12509
|
},
|
|
12372
12510
|
},
|
|
12511
|
+
{
|
|
12512
|
+
fingerprint: tuya.fingerprint('TS0601', ['_TZE200_pbo8cj0z']),
|
|
12513
|
+
model: 'TS0601_GTZ10',
|
|
12514
|
+
vendor: 'Tuya',
|
|
12515
|
+
description: 'Thermostat radiator valve',
|
|
12516
|
+
fromZigbee: [tuya.fz.datapoints],
|
|
12517
|
+
toZigbee: [tuya.tz.datapoints],
|
|
12518
|
+
onEvent: tuya.onEventSetLocalTime,
|
|
12519
|
+
configure: tuya.configureMagicPacket,
|
|
12520
|
+
ota: ota.zigbeeOTA,
|
|
12521
|
+
exposes: [
|
|
12522
|
+
e.battery(),
|
|
12523
|
+
e.child_lock(),
|
|
12524
|
+
e.window_detection(),
|
|
12525
|
+
e.window_open(),
|
|
12526
|
+
e.open_window_temperature().withValueMin(5).withValueMax(30),
|
|
12527
|
+
e.max_temperature().withValueMin(15).withValueMax(45),
|
|
12528
|
+
e.min_temperature().withValueMin(5).withValueMax(15),
|
|
12529
|
+
e
|
|
12530
|
+
.climate()
|
|
12531
|
+
.withPreset(['manual', 'auto', 'holiday', 'comfort', 'eco', 'off'])
|
|
12532
|
+
.withSetpoint('current_heating_setpoint', 5, 40, 0.5, ea.STATE_SET)
|
|
12533
|
+
.withLocalTemperature(ea.STATE)
|
|
12534
|
+
.withLocalTemperatureCalibration(-9, 9, 0.5, ea.STATE_SET)
|
|
12535
|
+
.withSystemMode(['off', 'heat', 'auto'], ea.STATE_SET, 'Only for Homeassistant')
|
|
12536
|
+
.withRunningState(['idle', 'heat'], ea.STATE),
|
|
12537
|
+
...tuya.exposes.scheduleAllDays(ea.STATE_SET, 'HH:MM/C HH:MM/C HH:MM/C HH:MM/C'),
|
|
12538
|
+
tuya.exposes
|
|
12539
|
+
.errorStatus()
|
|
12540
|
+
.withDescription('Error status. Possible codes: E1 - builtin sensor error, E2 - external sensor error, E3 - valve not installed, E4 - motor error.'),
|
|
12541
|
+
e
|
|
12542
|
+
.binary('frost_protection', ea.STATE_SET, 'ON', 'OFF')
|
|
12543
|
+
.withDescription('When the room temperature is lower than 5 °C, the valve opens; when the temperature rises to 8 °C, the valve closes.'),
|
|
12544
|
+
e.binary('boost_heating', ea.STATE_SET, 'ON', 'OFF').withDescription('Boost Heating: the device will enter the boost heating mode.'),
|
|
12545
|
+
e
|
|
12546
|
+
.numeric('boost_timeset_countdown', ea.STATE_SET)
|
|
12547
|
+
.withUnit('m')
|
|
12548
|
+
.withDescription('Setting ' +
|
|
12549
|
+
'minimum 0 - maximum 90 minutes boost time. The boost function is activated. The remaining ' +
|
|
12550
|
+
'time for the function will be counted down in minutes ( 90 to 0 ).')
|
|
12551
|
+
.withValueMin(0)
|
|
12552
|
+
.withValueMax(90),
|
|
12553
|
+
e.binary('switch_type', ea.STATE_SET, 'ON', 'OFF').withDescription('Enables/disables valve switch'),
|
|
12554
|
+
e.numeric('position', ea.STATE).withUnit('%').withValueMin(0).withValueMax(100).withDescription('Position'), // set actually not working
|
|
12555
|
+
e.enum('screen_orientation', ea.STATE_SET, ['up', 'right', 'down', 'left']).withDescription('Screen orientation'),
|
|
12556
|
+
],
|
|
12557
|
+
meta: {
|
|
12558
|
+
tuyaDatapoints: [
|
|
12559
|
+
[2, null, tuya.valueConverter.thermostatGtz10SystemModeAndPreset(null)],
|
|
12560
|
+
[2, 'preset', tuya.valueConverter.thermostatGtz10SystemModeAndPreset('preset')],
|
|
12561
|
+
[2, 'system_mode', tuya.valueConverter.thermostatGtz10SystemModeAndPreset('system_mode')],
|
|
12562
|
+
[4, 'current_heating_setpoint', tuya.valueConverter.divideBy10],
|
|
12563
|
+
[5, 'local_temperature', tuya.valueConverter.divideBy10],
|
|
12564
|
+
[6, 'battery', tuya.valueConverter.raw],
|
|
12565
|
+
[7, 'child_lock', tuya.valueConverter.lockUnlock],
|
|
12566
|
+
[9, 'max_temperature', tuya.valueConverter.divideBy10],
|
|
12567
|
+
[10, 'min_temperature', tuya.valueConverter.divideBy10],
|
|
12568
|
+
[14, 'window_detection', tuya.valueConverter.onOff],
|
|
12569
|
+
[15, 'window_open', tuya.valueConverter.onOff],
|
|
12570
|
+
[16, 'open_window_temperature', tuya.valueConverter.divideBy10],
|
|
12571
|
+
[28, 'schedule_monday', tuya.valueConverter.thermostatScheduleDayMultiDPWithDayNumber(1)],
|
|
12572
|
+
[29, 'schedule_tuesday', tuya.valueConverter.thermostatScheduleDayMultiDPWithDayNumber(2)],
|
|
12573
|
+
[30, 'schedule_wednesday', tuya.valueConverter.thermostatScheduleDayMultiDPWithDayNumber(3)],
|
|
12574
|
+
[31, 'schedule_thursday', tuya.valueConverter.thermostatScheduleDayMultiDPWithDayNumber(4)],
|
|
12575
|
+
[32, 'schedule_friday', tuya.valueConverter.thermostatScheduleDayMultiDPWithDayNumber(5)],
|
|
12576
|
+
[33, 'schedule_saturday', tuya.valueConverter.thermostatScheduleDayMultiDPWithDayNumber(6)],
|
|
12577
|
+
[34, 'schedule_sunday', tuya.valueConverter.thermostatScheduleDayMultiDPWithDayNumber(7)],
|
|
12578
|
+
[35, 'error_status', tuya.valueConverter.raw],
|
|
12579
|
+
[36, 'frost_protection', tuya.valueConverter.onOff],
|
|
12580
|
+
[37, 'boost_heating', tuya.valueConverter.onOff],
|
|
12581
|
+
[38, 'boost_timeset_countdown', tuya.valueConverter.raw],
|
|
12582
|
+
[47, 'local_temperature_calibration', tuya.valueConverter.localTempCalibration1],
|
|
12583
|
+
[
|
|
12584
|
+
49, //valve_state
|
|
12585
|
+
'running_state',
|
|
12586
|
+
tuya.valueConverterBasic.lookup({
|
|
12587
|
+
idle: tuya.enum(0),
|
|
12588
|
+
heat: tuya.enum(1),
|
|
12589
|
+
closing: tuya.enum(2),
|
|
12590
|
+
opening: tuya.enum(3),
|
|
12591
|
+
}),
|
|
12592
|
+
],
|
|
12593
|
+
[113, 'switch_type', tuya.valueConverter.onOff], // valve_switch
|
|
12594
|
+
[115, 'position', tuya.valueConverter.raw], // valve_opening
|
|
12595
|
+
[
|
|
12596
|
+
119,
|
|
12597
|
+
'screen_orientation',
|
|
12598
|
+
tuya.valueConverterBasic.lookup({
|
|
12599
|
+
up: tuya.enum(0),
|
|
12600
|
+
down: tuya.enum(1),
|
|
12601
|
+
left: tuya.enum(2),
|
|
12602
|
+
right: tuya.enum(3),
|
|
12603
|
+
}),
|
|
12604
|
+
],
|
|
12605
|
+
// Exposed but not used DPs
|
|
12606
|
+
[1, 'preheat', tuya.valueConverter.raw],
|
|
12607
|
+
[3, 'working_status', tuya.valueConverter.raw],
|
|
12608
|
+
[8, 'temperature_scale', tuya.valueConverter.raw],
|
|
12609
|
+
[11, 'max_temperature_f', tuya.valueConverter.divideBy10],
|
|
12610
|
+
[12, 'min_temperature_f', tuya.valueConverter.divideBy10],
|
|
12611
|
+
[17, 'open_window_time', tuya.valueConverter.raw],
|
|
12612
|
+
[18, 'backlight', tuya.valueConverter.raw],
|
|
12613
|
+
[39, 'switch_scale', tuya.valueConverter.raw],
|
|
12614
|
+
[40, 'local_temperature_f', tuya.valueConverter.divideBy10],
|
|
12615
|
+
[41, 'current_heating_setpoint_f', tuya.valueConverter.divideBy10],
|
|
12616
|
+
[46, 'open_window_temperature_f', tuya.valueConverter.divideBy10],
|
|
12617
|
+
[48, 'valve_testing', tuya.valueConverter.raw],
|
|
12618
|
+
[112, 'local_temperature_calibration_f', tuya.valueConverter.localTempCalibration1],
|
|
12619
|
+
[114, 'valve_control_type', tuya.valueConverterBasic.lookup({ PID: 0, ONOFF: 1 })],
|
|
12620
|
+
[116, 'frost_temperature', tuya.valueConverter.raw],
|
|
12621
|
+
[117, 'frost_temperature_f', tuya.valueConverter.raw],
|
|
12622
|
+
[118, 'auto_time', tuya.valueConverter.raw],
|
|
12623
|
+
[120, 'multi_control_link', tuya.valueConverter.raw],
|
|
12624
|
+
[121, 'holiday_time', tuya.valueConverter.raw],
|
|
12625
|
+
],
|
|
12626
|
+
},
|
|
12627
|
+
},
|
|
12373
12628
|
];
|
|
12374
12629
|
exports.default = definitions;
|
|
12375
12630
|
module.exports = definitions;
|