zigbee-herdsman-converters 15.0.108 → 15.0.110
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/devices/bosch.js +1 -1
- package/devices/innr.js +1 -1
- package/devices/ledvance.js +3 -3
- package/devices/lonsonho.js +1 -1
- package/devices/onesti.js +1 -1
- package/devices/philips.js +7 -0
- package/devices/tuya.js +44 -3
- package/lib/tuya.js +1 -1
- package/package.json +1 -1
package/devices/bosch.js
CHANGED
|
@@ -588,7 +588,7 @@ const definition = [
|
|
|
588
588
|
meta: {battery: {voltageToPercentage: '3V_2500'}},
|
|
589
589
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
590
590
|
const endpoint = device.getEndpoint(1);
|
|
591
|
-
await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg',
|
|
591
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg', 64684]);
|
|
592
592
|
await reporting.batteryPercentageRemaining(endpoint);
|
|
593
593
|
await reporting.batteryVoltage(endpoint);
|
|
594
594
|
await endpoint.configureReporting(0xFCAC, [{
|
package/devices/innr.js
CHANGED
|
@@ -67,7 +67,7 @@ module.exports = [
|
|
|
67
67
|
model: 'FL 120 C',
|
|
68
68
|
vendor: 'Innr',
|
|
69
69
|
description: 'Color Flex LED strip',
|
|
70
|
-
extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 555], supportsHS: true}),
|
|
70
|
+
extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 555], supportsHS: true, disablePowerOnBehavior: true}),
|
|
71
71
|
meta: {applyRedFix: true, turnsOffAtBrightness1: true},
|
|
72
72
|
},
|
|
73
73
|
{
|
package/devices/ledvance.js
CHANGED
|
@@ -12,11 +12,11 @@ module.exports = [
|
|
|
12
12
|
ota: ota.ledvance,
|
|
13
13
|
},
|
|
14
14
|
{
|
|
15
|
-
zigbeeModel: ['Outdoor Plug'
|
|
15
|
+
zigbeeModel: ['Outdoor Plug'],
|
|
16
16
|
model: 'AC26940/AC31266',
|
|
17
17
|
vendor: 'LEDVANCE',
|
|
18
18
|
description: 'Smart Zigbee outdoor plug',
|
|
19
|
-
extend: extend.switch(),
|
|
19
|
+
extend: extend.switch({disablePowerOnBehavior: true}),
|
|
20
20
|
ota: ota.ledvance,
|
|
21
21
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
22
22
|
const endpoint = device.getEndpoint(1);
|
|
@@ -299,7 +299,7 @@ module.exports = [
|
|
|
299
299
|
ota: ota.ledvance,
|
|
300
300
|
},
|
|
301
301
|
{
|
|
302
|
-
zigbeeModel: ['PLUG COMPACT EU T'],
|
|
302
|
+
zigbeeModel: ['PLUG COMPACT EU T', 'Plug Value'],
|
|
303
303
|
model: '4058075729322',
|
|
304
304
|
vendor: 'LEDVANCE',
|
|
305
305
|
description: 'SMART+ Compact Outdoor Plug EU',
|
package/devices/lonsonho.js
CHANGED
|
@@ -197,7 +197,7 @@ module.exports = [
|
|
|
197
197
|
model: 'QS-Zigbee-S05-LN',
|
|
198
198
|
vendor: 'Lonsonho',
|
|
199
199
|
description: '1 gang switch module with neutral wire',
|
|
200
|
-
extend: extend.switch(),
|
|
200
|
+
extend: extend.switch({disablePowerOnBehavior: true}),
|
|
201
201
|
toZigbee: [tz.power_on_behavior, tz.TYZB01_on_off],
|
|
202
202
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
203
203
|
await reporting.bind(device.getEndpoint(1), coordinatorEndpoint, ['genOnOff']);
|
package/devices/onesti.js
CHANGED
|
@@ -8,7 +8,7 @@ const constants = require('../lib/constants');
|
|
|
8
8
|
|
|
9
9
|
module.exports = [
|
|
10
10
|
{
|
|
11
|
-
zigbeeModel: ['easyCodeTouch_v1', 'EasyCodeTouch', 'EasyFingerTouch', 'NimlyPRO'],
|
|
11
|
+
zigbeeModel: ['easyCodeTouch_v1', 'EasyCodeTouch', 'EasyFingerTouch', 'NimlyPRO', 'NimlyCode'],
|
|
12
12
|
model: 'easyCodeTouch_v1',
|
|
13
13
|
vendor: 'Onesti Products AS',
|
|
14
14
|
description: 'Zigbee module for EasyAccess code touch series',
|
package/devices/philips.js
CHANGED
|
@@ -3143,4 +3143,11 @@ module.exports = [
|
|
|
3143
3143
|
description: 'Hue White Ambiance Devote',
|
|
3144
3144
|
extend: philips.extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
3145
3145
|
},
|
|
3146
|
+
{
|
|
3147
|
+
zigbeeModel: ['LLM011'],
|
|
3148
|
+
model: '800094',
|
|
3149
|
+
vendor: 'Philips',
|
|
3150
|
+
description: 'Hue Phoenix dimmable LED smart pendant light',
|
|
3151
|
+
extend: philips.extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
3152
|
+
},
|
|
3146
3153
|
];
|
package/devices/tuya.js
CHANGED
|
@@ -1291,6 +1291,7 @@ module.exports = [
|
|
|
1291
1291
|
tuya.whitelabel('Lidl', 'HG08007', 'Livarno Home outdoor LED band', ['_TZ3210_zbabx9wh']),
|
|
1292
1292
|
tuya.whitelabel('Lidl', '399629_2110', 'Livarno Lux Ceiling Panel RGB+CCT', ['_TZ3210_c0s1xloa']),
|
|
1293
1293
|
tuya.whitelabel('Skydance', 'WZ5_dim_2', 'Zigbee & RF 5 in 1 LED controller (DIM mode)', ['_TZB210_3zfp8mki']),
|
|
1294
|
+
tuya.whitelabel('TuYa', 'TS0505B_1_1', 'Zigbee 3.0 18W led light bulb E27 RGBCW', ['_TZ3210_jd3z4yig']),
|
|
1294
1295
|
],
|
|
1295
1296
|
extend: tuya.extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500], noConfigure: true}),
|
|
1296
1297
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
@@ -1442,6 +1443,7 @@ module.exports = [
|
|
|
1442
1443
|
{vendor: 'Tesla Smart', model: 'TS0202'},
|
|
1443
1444
|
tuya.whitelabel('MiBoxer', 'PIR1-ZB', 'PIR sensor', ['_TZ3040_wqmtjsyk']),
|
|
1444
1445
|
tuya.whitelabel('TuYa', 'ZMS01', 'Motion sensor', ['_TZ3000_otvn3lne']),
|
|
1446
|
+
tuya.whitelabel('Nous', 'E2', 'Motion sensor', ['_TZ3000_h4wnrtck']),
|
|
1445
1447
|
],
|
|
1446
1448
|
fromZigbee: [fz.ias_occupancy_alarm_1, fz.battery, fz.ignore_basic_report, fz.ias_occupancy_alarm_1_report],
|
|
1447
1449
|
toZigbee: [],
|
|
@@ -2064,11 +2066,14 @@ module.exports = [
|
|
|
2064
2066
|
model: 'TS0201',
|
|
2065
2067
|
vendor: 'TuYa',
|
|
2066
2068
|
description: 'Temperature & humidity sensor with display',
|
|
2067
|
-
whiteLabel: [{vendor: 'BlitzWolf', model: 'BW-IS4'}],
|
|
2068
2069
|
fromZigbee: [fzLocal.TS0201_battery, fz.temperature, fzLocal.TS0201_humidity],
|
|
2069
2070
|
toZigbee: [],
|
|
2070
2071
|
exposes: [e.battery(), e.temperature(), e.humidity(), e.battery_voltage()],
|
|
2071
2072
|
configure: tuya.configureMagicPacket,
|
|
2073
|
+
whiteLabel: [
|
|
2074
|
+
{vendor: 'BlitzWolf', model: 'BW-IS4'},
|
|
2075
|
+
tuya.whitelabel('TuYa', 'TS0201_1', 'Zigbee 3.0 temperature humidity sensor with display', ['_TZ3210_alxkwn0h']),
|
|
2076
|
+
],
|
|
2072
2077
|
},
|
|
2073
2078
|
{
|
|
2074
2079
|
fingerprint: [
|
|
@@ -2535,12 +2540,12 @@ module.exports = [
|
|
|
2535
2540
|
{vendor: 'TuYa', model: 'DT82LEMA-1.2N'},
|
|
2536
2541
|
{vendor: 'TuYa', model: 'ZD82TN', description: 'Curtain motor'},
|
|
2537
2542
|
{vendor: 'Larkkey', model: 'ZSTY-SM-1SRZG-EU'},
|
|
2538
|
-
{vendor: 'Zemismart', model: 'ZM85EL-2Z', description: 'Roman Rod I type curtains track'},
|
|
2539
2543
|
{vendor: 'Zemismart', model: 'AM43', description: 'Roller blind motor'},
|
|
2540
2544
|
{vendor: 'Zemismart', model: 'M2805EGBZTN', description: 'Tubular motor'},
|
|
2541
2545
|
{vendor: 'Zemismart', model: 'BCM500DS-TYZ', description: 'Curtain motor'},
|
|
2542
2546
|
{vendor: 'A-OK', model: 'AM25', description: 'Tubular motor'},
|
|
2543
2547
|
{vendor: 'Alutech', model: 'AM/R-Sm', description: 'Tubular motor'},
|
|
2548
|
+
tuya.whitelabel('Zemismart', 'ZM85EL-2Z', 'Roman Rod I type U curtains track', ['_TZE200_cf1sl3tj']),
|
|
2544
2549
|
],
|
|
2545
2550
|
fromZigbee: [fz.tuya_cover, fz.ignore_basic_report],
|
|
2546
2551
|
toZigbee: [tz.tuya_cover_control, tz.tuya_cover_options],
|
|
@@ -3075,6 +3080,7 @@ module.exports = [
|
|
|
3075
3080
|
{vendor: 'MatSee Plus', model: 'PJ-ZSW01'}, {vendor: 'MODEMIX', model: 'MOD037'}, {vendor: 'MODEMIX', model: 'MOD048'},
|
|
3076
3081
|
{vendor: 'Coswall', model: 'CS-AJ-DE2U-ZG-11'}, {vendor: 'Aubess', model: 'TS011F_plug_1'}, {vendor: 'Immax', model: '07752L'},
|
|
3077
3082
|
tuya.whitelabel('NOUS', 'A1Z', 'Smart plug (with power monitoring)', ['_TZ3000_2putqrmw']),
|
|
3083
|
+
tuya.whitelabel('Moes', 'MOES_plug', 'Smart plug (with power monitoring)', ['_TZ3000_yujkchbz']),
|
|
3078
3084
|
],
|
|
3079
3085
|
ota: ota.zigbeeOTA,
|
|
3080
3086
|
extend: tuya.extend.switch({
|
|
@@ -4313,9 +4319,10 @@ module.exports = [
|
|
|
4313
4319
|
{modelID: 'TS0601', manufacturerName: '_TZE200_holel4dk'},
|
|
4314
4320
|
{modelID: 'TS0601', manufacturerName: '_TZE200_xpq2rzhq'},
|
|
4315
4321
|
{modelID: 'TS0601', manufacturerName: '_TZE200_wukb7rhc'},
|
|
4322
|
+
{modelID: 'TS0601', manufacturerName: '_TZE204_xsm7l9xa'},
|
|
4316
4323
|
{modelID: 'TS0601', manufacturerName: '_TZE204_ztc6ggyl'},
|
|
4317
4324
|
{modelID: 'TS0601', manufacturerName: '_TZE200_ztc6ggyl'}],
|
|
4318
|
-
model: '
|
|
4325
|
+
model: 'TS0601_smart_human_presence_sensor_1',
|
|
4319
4326
|
vendor: 'TuYa',
|
|
4320
4327
|
description: 'Smart Human presence sensor',
|
|
4321
4328
|
fromZigbee: [fz.tuya_smart_human_presense_sensor],
|
|
@@ -4338,6 +4345,40 @@ module.exports = [
|
|
|
4338
4345
|
.withDescription('Self_test, possible resuts: checking, check_success, check_failure, others, comm_fault, radar_fault.'),
|
|
4339
4346
|
],
|
|
4340
4347
|
},
|
|
4348
|
+
{
|
|
4349
|
+
fingerprint: tuya.fingerprint('TS0601', ['_TZE204_sxm7l9xa']),
|
|
4350
|
+
model: 'TS0601_smart_human_presence_sensor_2',
|
|
4351
|
+
vendor: 'TuYa',
|
|
4352
|
+
description: 'Smart Human presence sensor',
|
|
4353
|
+
fromZigbee: [tuya.fz.datapoints],
|
|
4354
|
+
toZigbee: [tuya.tz.datapoints],
|
|
4355
|
+
exposes: [
|
|
4356
|
+
e.illuminance_lux(), e.presence(),
|
|
4357
|
+
exposes.numeric('target_distance', ea.STATE).withDescription('Distance to target').withUnit('m'),
|
|
4358
|
+
exposes.numeric('radar_sensitivity', ea.STATE_SET).withValueMin(0).withValueMax(9).withValueStep(1)
|
|
4359
|
+
.withDescription('sensitivity of the radar'),
|
|
4360
|
+
exposes.numeric('minimum_range', ea.STATE_SET).withValueMin(0).withValueMax(9.5).withValueStep(0.15)
|
|
4361
|
+
.withDescription('Minimum range').withUnit('m'),
|
|
4362
|
+
exposes.numeric('maximum_range', ea.STATE_SET).withValueMin(0).withValueMax(9.5).withValueStep(0.15)
|
|
4363
|
+
.withDescription('Maximum range').withUnit('m'),
|
|
4364
|
+
exposes.numeric('detection_delay', ea.STATE_SET).withValueMin(0).withValueMax(10).withValueStep(0.1)
|
|
4365
|
+
.withDescription('Detection delay').withUnit('s'),
|
|
4366
|
+
exposes.numeric('fading_time', ea.STATE_SET).withValueMin(0.5).withValueMax(1500).withValueStep(1)
|
|
4367
|
+
.withDescription('Fading time').withUnit('s'),
|
|
4368
|
+
],
|
|
4369
|
+
meta: {
|
|
4370
|
+
tuyaDatapoints: [
|
|
4371
|
+
[104, 'illuminance_lux', tuya.valueConverter.raw],
|
|
4372
|
+
[105, 'presence', tuya.valueConverter.trueFalse1],
|
|
4373
|
+
[106, 'radar_sensitivity', tuya.valueConverter.raw],
|
|
4374
|
+
[107, 'maximum_range', tuya.valueConverter.divideBy100],
|
|
4375
|
+
[108, 'minimum_range', tuya.valueConverter.divideBy100],
|
|
4376
|
+
[109, 'target_distance', tuya.valueConverter.divideBy100],
|
|
4377
|
+
[110, 'fading_time', tuya.valueConverter.divideBy10],
|
|
4378
|
+
[111, 'detection_delay', tuya.valueConverter.divideBy10],
|
|
4379
|
+
],
|
|
4380
|
+
},
|
|
4381
|
+
},
|
|
4341
4382
|
{
|
|
4342
4383
|
fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_whkgqxse'}],
|
|
4343
4384
|
model: 'JM-TRH-ZGB-V1',
|
package/lib/tuya.js
CHANGED
|
@@ -1656,7 +1656,7 @@ const tuyaTz = {
|
|
|
1656
1656
|
'min_temperature', 'max_temperature', 'window_detection', 'boost_heating', 'alarm_ringtone', 'alarm_time', 'fan_speed',
|
|
1657
1657
|
'reverse_direction', 'border', 'click_control', 'motor_direction', 'opening_mode', 'factory_reset', 'set_upper_limit', 'set_bottom_limit',
|
|
1658
1658
|
'motor_speed', 'timer', 'reset_frost_lock', 'schedule_periodic', 'schedule_weekday', 'backlight_mode', 'calibration', 'motor_steering',
|
|
1659
|
-
...[1, 2, 3, 4, 5, 6].map((no) => `schedule_slot_${no}`),
|
|
1659
|
+
...[1, 2, 3, 4, 5, 6].map((no) => `schedule_slot_${no}`), 'minimum_range', 'maximum_range', 'detection_delay', 'fading_time',
|
|
1660
1660
|
],
|
|
1661
1661
|
convertSet: async (entity, key, value, meta) => {
|
|
1662
1662
|
// A set converter is only called once; therefore we need to loop
|