zigbee-herdsman-converters 14.0.550 → 14.0.553
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/converters/toZigbee.js +2 -2
- package/devices/ikea.js +6 -0
- package/devices/lidl.js +8 -0
- package/devices/paulmann.js +1 -1
- package/devices/philips.js +1 -1
- package/devices/robb.js +12 -0
- package/devices/schneider_electric.js +3 -2
- package/devices/tuya.js +11 -3
- package/devices/xiaomi.js +15 -4
- package/package.json +1 -1
package/converters/toZigbee.js
CHANGED
|
@@ -2300,7 +2300,7 @@ const converters = {
|
|
|
2300
2300
|
key: ['led_disabled_night'],
|
|
2301
2301
|
convertSet: async (entity, key, value, meta) => {
|
|
2302
2302
|
if (['ZNCZ04LM', 'ZNCZ15LM', 'QBCZ14LM', 'QBCZ15LM', 'QBKG19LM', 'QBKG20LM', 'QBKG25LM', 'QBKG26LM',
|
|
2303
|
-
'QBKG31LM', 'QBKG34LM', 'DLKZMK11LM', 'SSM-U01'].includes(meta.mapped.model)) {
|
|
2303
|
+
'QBKG31LM', 'QBKG34LM', 'DLKZMK11LM', 'SSM-U01', 'WS-EUK01', 'WS-EUK02'].includes(meta.mapped.model)) {
|
|
2304
2304
|
await entity.write('aqaraOpple', {0x0203: {value: value ? 1 : 0, type: 0x10}}, manufacturerOptions.xiaomi);
|
|
2305
2305
|
} else if (['ZNCZ11LM'].includes(meta.mapped.model)) {
|
|
2306
2306
|
const payload = value ?
|
|
@@ -2315,7 +2315,7 @@ const converters = {
|
|
|
2315
2315
|
},
|
|
2316
2316
|
convertGet: async (entity, key, meta) => {
|
|
2317
2317
|
if (['ZNCZ04LM', 'ZNCZ15LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG19LM', 'QBKG20LM', 'QBKG25LM', 'QBKG26LM',
|
|
2318
|
-
'QBKG31LM', 'QBKG34LM', 'DLKZMK11LM', 'SSM-U01'].includes(meta.mapped.model)) {
|
|
2318
|
+
'QBKG31LM', 'QBKG34LM', 'DLKZMK11LM', 'SSM-U01', 'WS-EUK01', 'WS-EUK02'].includes(meta.mapped.model)) {
|
|
2319
2319
|
await entity.read('aqaraOpple', [0x0203], manufacturerOptions.xiaomi);
|
|
2320
2320
|
} else {
|
|
2321
2321
|
throw new Error('Not supported');
|
package/devices/ikea.js
CHANGED
|
@@ -374,6 +374,7 @@ module.exports = [
|
|
|
374
374
|
vendor: 'IKEA',
|
|
375
375
|
description: 'TRADFRI LED bulb E27 WW clear 250 lumen, dimmable',
|
|
376
376
|
extend: tradfriExtend.light_onoff_brightness(),
|
|
377
|
+
meta: {turnsOffAtBrightness1: true},
|
|
377
378
|
},
|
|
378
379
|
{
|
|
379
380
|
zigbeeModel: ['TRADFRIbulbE26WWclear250lm'],
|
|
@@ -411,6 +412,7 @@ module.exports = [
|
|
|
411
412
|
vendor: 'IKEA',
|
|
412
413
|
description: 'TRADFRI bulb E26/E27 CWS 800/806 lumen, dimmable, color, opal white',
|
|
413
414
|
extend: tradfriExtend.light_onoff_brightness_colortemp_color(),
|
|
415
|
+
meta: {turnsOffAtBrightness1: true},
|
|
414
416
|
},
|
|
415
417
|
{
|
|
416
418
|
zigbeeModel: ['TRADFRI bulb E14 W op/ch 400lm', 'TRADFRI bulb E12 W op/ch 400lm', 'TRADFRI bulb E17 W op/ch 400lm'],
|
|
@@ -432,6 +434,7 @@ module.exports = [
|
|
|
432
434
|
vendor: 'IKEA',
|
|
433
435
|
description: 'TRADFRI LED bulb E26/E27 806 lumen, dimmable, warm white',
|
|
434
436
|
extend: tradfriExtend.light_onoff_brightness(),
|
|
437
|
+
meta: {turnsOffAtBrightness1: true},
|
|
435
438
|
},
|
|
436
439
|
{
|
|
437
440
|
zigbeeModel: ['TRADFRI bulb E27 WS clear 806lm', 'TRADFRI bulb E26 WS clear 806lm'],
|
|
@@ -498,6 +501,7 @@ module.exports = [
|
|
|
498
501
|
vendor: 'IKEA',
|
|
499
502
|
description: 'FLOALT LED light panel, dimmable, white spectrum (30x30 cm)',
|
|
500
503
|
extend: tradfriExtend.light_onoff_brightness_colortemp(),
|
|
504
|
+
meta: {turnsOffAtBrightness1: true},
|
|
501
505
|
},
|
|
502
506
|
{
|
|
503
507
|
zigbeeModel: ['FLOALT panel WS 60x60'],
|
|
@@ -505,6 +509,7 @@ module.exports = [
|
|
|
505
509
|
vendor: 'IKEA',
|
|
506
510
|
description: 'FLOALT LED light panel, dimmable, white spectrum (60x60 cm)',
|
|
507
511
|
extend: tradfriExtend.light_onoff_brightness_colortemp(),
|
|
512
|
+
meta: {turnsOffAtBrightness1: true},
|
|
508
513
|
},
|
|
509
514
|
{
|
|
510
515
|
zigbeeModel: ['JORMLIEN door WS 40x80'],
|
|
@@ -519,6 +524,7 @@ module.exports = [
|
|
|
519
524
|
vendor: 'IKEA',
|
|
520
525
|
description: 'FLOALT LED light panel, dimmable, white spectrum (30x90 cm)',
|
|
521
526
|
extend: tradfriExtend.light_onoff_brightness_colortemp(),
|
|
527
|
+
meta: {turnsOffAtBrightness1: true},
|
|
522
528
|
},
|
|
523
529
|
{
|
|
524
530
|
zigbeeModel: ['SURTE door WS 38x64'],
|
package/devices/lidl.js
CHANGED
|
@@ -486,6 +486,14 @@ module.exports = [
|
|
|
486
486
|
device.getEndpoint(1).saveClusterAttributeKeyValue('lightingColorCtrl', {colorCapabilities: 29});
|
|
487
487
|
},
|
|
488
488
|
},
|
|
489
|
+
{
|
|
490
|
+
fingerprint: [{modelID: 'TS0505B', manufactureName: '_TZ3210_umi6vbsz'}],
|
|
491
|
+
model: '100341862',
|
|
492
|
+
vendor: 'Lidl',
|
|
493
|
+
description: 'Livarno Home LED-Flooder',
|
|
494
|
+
extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500], disableColorTempStartup: true}),
|
|
495
|
+
meta: {applyRedFix: true, enhancedHue: false},
|
|
496
|
+
},
|
|
489
497
|
{
|
|
490
498
|
fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_s8gkrkxk'}],
|
|
491
499
|
model: 'HG06467',
|
package/devices/paulmann.js
CHANGED
|
@@ -64,7 +64,7 @@ module.exports = [
|
|
|
64
64
|
extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 370]}),
|
|
65
65
|
},
|
|
66
66
|
{
|
|
67
|
-
zigbeeModel: ['CCT light', 'CCT_light'],
|
|
67
|
+
zigbeeModel: ['CCT light', 'CCT_light', 'CCT light '],
|
|
68
68
|
model: '50064',
|
|
69
69
|
vendor: 'Paulmann',
|
|
70
70
|
description: 'SmartHome led spot',
|
package/devices/philips.js
CHANGED
|
@@ -2417,7 +2417,7 @@ module.exports = [
|
|
|
2417
2417
|
extend: hueExtend.light_onoff_brightness_colortemp_color(),
|
|
2418
2418
|
},
|
|
2419
2419
|
{
|
|
2420
|
-
zigbeeModel: ['1746330P7', '1746347P7'],
|
|
2420
|
+
zigbeeModel: ['1746330P7', '1746330V7', '1746347P7'],
|
|
2421
2421
|
model: '1746330P7',
|
|
2422
2422
|
vendor: 'Philips',
|
|
2423
2423
|
description: 'Hue Appear outdoor wall light',
|
package/devices/robb.js
CHANGED
|
@@ -88,6 +88,18 @@ module.exports = [
|
|
|
88
88
|
await reporting.onOff(endpoint);
|
|
89
89
|
},
|
|
90
90
|
},
|
|
91
|
+
{
|
|
92
|
+
zigbeeModel: ['ROB_200-030-0'],
|
|
93
|
+
model: 'ROB_200-030-0',
|
|
94
|
+
vendor: 'ROBB',
|
|
95
|
+
description: 'Zigbee AC in wall switch 400W (2-wire)',
|
|
96
|
+
extend: extend.switch(),
|
|
97
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
98
|
+
const endpoint = device.getEndpoint(1) || device.getEndpoint(3);
|
|
99
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
|
|
100
|
+
await reporting.onOff(endpoint);
|
|
101
|
+
},
|
|
102
|
+
},
|
|
91
103
|
{
|
|
92
104
|
zigbeeModel: ['ROB_200-014-0'],
|
|
93
105
|
model: 'ROB_200-014-0',
|
|
@@ -194,8 +194,9 @@ module.exports = [
|
|
|
194
194
|
vendor: 'Schneider Electric',
|
|
195
195
|
description: 'Roller shutter',
|
|
196
196
|
fromZigbee: [fz.cover_position_tilt],
|
|
197
|
-
toZigbee: [tz.cover_position_tilt, tz.cover_state],
|
|
198
|
-
exposes: [e.cover_position()
|
|
197
|
+
toZigbee: [tz.cover_position_tilt, tz.cover_state, tzLocal.lift_duration],
|
|
198
|
+
exposes: [e.cover_position(), exposes.numeric('lift_duration', ea.STATE_SET).withUnit('seconds')
|
|
199
|
+
.withValueMin(0).withValueMax(300).withDescription('Duration of lift')],
|
|
199
200
|
meta: {coverInverted: true},
|
|
200
201
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
201
202
|
const endpoint = device.getEndpoint(5);
|
package/devices/tuya.js
CHANGED
|
@@ -467,7 +467,8 @@ module.exports = [
|
|
|
467
467
|
{modelID: 'TS0505B', manufacturerName: '_TZ3210_iwbaamgh'},
|
|
468
468
|
{modelID: 'TS0505B', manufacturerName: '_TZ3210_klv2wul0'},
|
|
469
469
|
{modelID: 'TS0505B', manufacturerName: '_TZ3210_rcggc0ys'},
|
|
470
|
-
{modelID: 'TS0505B', manufacturerName: '_TZ3210_s6zec0of'}
|
|
470
|
+
{modelID: 'TS0505B', manufacturerName: '_TZ3210_s6zec0of'},
|
|
471
|
+
{modelID: 'TS0505B', manufacturerName: '_TZ3210_y5fjkn7x'}],
|
|
471
472
|
model: 'TS0505B',
|
|
472
473
|
vendor: 'TuYa',
|
|
473
474
|
description: 'Zigbee RGB+CCT light',
|
|
@@ -659,6 +660,7 @@ module.exports = [
|
|
|
659
660
|
{modelID: 'TS0601', manufacturerName: '_TZE200_swaamsoy'},
|
|
660
661
|
{modelID: 'TS0601', manufacturerName: '_TZE200_3p5ydos3'},
|
|
661
662
|
{modelID: 'TS0601', manufacturerName: '_TZE200_1agwnems'},
|
|
663
|
+
{modelID: 'TS0601', manufacturerName: '_TZE200_ip2akl4w'},
|
|
662
664
|
],
|
|
663
665
|
model: 'TS0601_dimmer',
|
|
664
666
|
vendor: 'TuYa',
|
|
@@ -678,6 +680,7 @@ module.exports = [
|
|
|
678
680
|
{vendor: 'Earda', model: 'EDM-1ZAB-EU'},
|
|
679
681
|
{vendor: 'Earda', model: 'EDM-1ZBA-EU'},
|
|
680
682
|
{vendor: 'Mercator Ikuü', model: 'SSWD01'},
|
|
683
|
+
{vendor: 'Moes', model: 'ZS-USD'},
|
|
681
684
|
],
|
|
682
685
|
},
|
|
683
686
|
{
|
|
@@ -807,10 +810,12 @@ module.exports = [
|
|
|
807
810
|
},
|
|
808
811
|
{
|
|
809
812
|
fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_kyfqmmyl'},
|
|
810
|
-
{modelID: 'TS0601', manufacturerName: '_TZE200_2hf7x9n3'}
|
|
813
|
+
{modelID: 'TS0601', manufacturerName: '_TZE200_2hf7x9n3'},
|
|
814
|
+
{modelID: 'TS0601', manufacturerName: '_TZE200_bynnczcb'}],
|
|
811
815
|
model: 'TS0601_switch_3_gang',
|
|
812
816
|
vendor: 'TuYa',
|
|
813
817
|
description: '3 gang switch',
|
|
818
|
+
whiteLabel: [{vendor: 'NOVADIGITAL', model: 'WS-US-ZB', description: 'Interruptor touch Zigbee 3 Teclas'}],
|
|
814
819
|
exposes: [e.switch().withEndpoint('l1').setAccess('state', ea.STATE_SET),
|
|
815
820
|
e.switch().withEndpoint('l2').setAccess('state', ea.STATE_SET),
|
|
816
821
|
e.switch().withEndpoint('l3').setAccess('state', ea.STATE_SET)],
|
|
@@ -944,6 +949,8 @@ module.exports = [
|
|
|
944
949
|
fingerprint: [
|
|
945
950
|
{modelID: 'TS0201', manufacturerName: '_TZ3000_bguser20'},
|
|
946
951
|
{modelID: 'TS0201', manufacturerName: '_TZ3000_fllyghyj'},
|
|
952
|
+
{modelID: 'TS0201', manufacturerName: '_TZ3000_dowj6gyi'},
|
|
953
|
+
{modelID: 'TS0201', manufacturerName: '_TZ3000_yd2e749y'},
|
|
947
954
|
],
|
|
948
955
|
model: 'WSD500A',
|
|
949
956
|
vendor: 'TuYa',
|
|
@@ -1556,7 +1563,8 @@ module.exports = [
|
|
|
1556
1563
|
description: 'Smart plug (with power monitoring)',
|
|
1557
1564
|
vendor: 'TuYa',
|
|
1558
1565
|
whiteLabel: [{vendor: 'LELLKI', model: 'TS011F_plug'}, {vendor: 'NEO', model: 'NAS-WR01B'},
|
|
1559
|
-
{vendor: 'BlitzWolf', model: 'BW-SHP15'}, {vendor: 'Nous', model: 'A1Z'}, {vendor: 'BlitzWolf', model: 'BW-SHP13'}
|
|
1566
|
+
{vendor: 'BlitzWolf', model: 'BW-SHP15'}, {vendor: 'Nous', model: 'A1Z'}, {vendor: 'BlitzWolf', model: 'BW-SHP13'},
|
|
1567
|
+
{vendor: 'MatSee Plus', model: 'PJ-ZSW01'}],
|
|
1560
1568
|
ota: ota.zigbeeOTA,
|
|
1561
1569
|
fromZigbee: [fz.on_off, fz.electrical_measurement, fz.metering, fz.ignore_basic_report, fz.tuya_switch_power_outage_memory,
|
|
1562
1570
|
fz.ts011f_plug_indicator_mode, fz.ts011f_plug_child_mode],
|
package/devices/xiaomi.js
CHANGED
|
@@ -355,9 +355,14 @@ module.exports = [
|
|
|
355
355
|
vendor: 'Xiaomi',
|
|
356
356
|
description: 'Aqara smart wall switch H1 EU (no neutral, single rocker)',
|
|
357
357
|
fromZigbee: [fz.on_off, fz.xiaomi_multistate_action, fz.aqara_opple],
|
|
358
|
-
toZigbee: [tz.on_off, tz.xiaomi_switch_operation_mode_opple, tz.xiaomi_switch_power_outage_memory,
|
|
358
|
+
toZigbee: [tz.on_off, tz.xiaomi_switch_operation_mode_opple, tz.xiaomi_switch_power_outage_memory,
|
|
359
|
+
tz.xiaomi_flip_indicator_light, tz.xiaomi_led_disabled_night, tz.aqara_switch_mode_switch],
|
|
359
360
|
exposes: [e.switch(), e.action(['single', 'double']), e.power_outage_memory(), e.flip_indicator_light(),
|
|
360
|
-
|
|
361
|
+
e.led_disabled_night(), e.power_outage_count(), e.device_temperature().withAccess(ea.STATE),
|
|
362
|
+
exposes.enum('operation_mode', ea.ALL, ['control_relay', 'decoupled']).withDescription('Decoupled mode'),
|
|
363
|
+
exposes.enum('mode_switch', ea.ALL, ['anti_flicker_mode', 'quick_mode'])
|
|
364
|
+
.withDescription('Anti flicker mode can be used to solve blinking issues of some lights.' +
|
|
365
|
+
'Quick mode makes the device respond faster.')],
|
|
361
366
|
onEvent: preventReset,
|
|
362
367
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
363
368
|
const endpoint1 = device.getEndpoint(1);
|
|
@@ -371,18 +376,24 @@ module.exports = [
|
|
|
371
376
|
vendor: 'Xiaomi',
|
|
372
377
|
description: 'Aqara smart wall switch H1 EU (no neutral, double rocker)',
|
|
373
378
|
fromZigbee: [fz.on_off, fz.xiaomi_multistate_action, fz.aqara_opple],
|
|
374
|
-
toZigbee: [tz.on_off, tz.xiaomi_switch_operation_mode_opple, tz.xiaomi_switch_power_outage_memory,
|
|
379
|
+
toZigbee: [tz.on_off, tz.xiaomi_switch_operation_mode_opple, tz.xiaomi_switch_power_outage_memory,
|
|
380
|
+
tz.xiaomi_flip_indicator_light, tz.xiaomi_led_disabled_night, tz.aqara_switch_mode_switch],
|
|
375
381
|
meta: {multiEndpoint: true},
|
|
376
382
|
endpoint: (_device) => {
|
|
377
383
|
return {'left': 1, 'right': 2};
|
|
378
384
|
},
|
|
379
|
-
exposes: [e.switch().withEndpoint('left'), e.switch().withEndpoint('right'), e.power_outage_memory(),
|
|
385
|
+
exposes: [e.switch().withEndpoint('left'), e.switch().withEndpoint('right'), e.power_outage_memory(),
|
|
386
|
+
e.flip_indicator_light(), e.led_disabled_night(), e.power_outage_count(),
|
|
387
|
+
e.device_temperature().withAccess(ea.STATE),
|
|
380
388
|
exposes.enum('operation_mode', ea.ALL, ['control_relay', 'decoupled'])
|
|
381
389
|
.withDescription('Decoupled mode for left button')
|
|
382
390
|
.withEndpoint('left'),
|
|
383
391
|
exposes.enum('operation_mode', ea.ALL, ['control_relay', 'decoupled'])
|
|
384
392
|
.withDescription('Decoupled mode for right button')
|
|
385
393
|
.withEndpoint('right'),
|
|
394
|
+
exposes.enum('mode_switch', ea.ALL, ['anti_flicker_mode', 'quick_mode'])
|
|
395
|
+
.withDescription('Anti flicker mode can be used to solve blinking issues of some lights.' +
|
|
396
|
+
'Quick mode makes the device respond faster.'),
|
|
386
397
|
e.action(['single_left', 'double_left', 'single_right', 'double_right', 'single_both', 'double_both'])],
|
|
387
398
|
onEvent: preventReset,
|
|
388
399
|
configure: async (device, coordinatorEndpoint, logger) => {
|