zigbee-herdsman-converters 15.0.72 → 15.0.74
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 +23 -2
- package/devices/gledopto.js +7 -0
- package/devices/heiman.js +1 -1
- package/devices/lidl.js +1 -1
- package/devices/robb.js +7 -0
- package/devices/sonoff.js +13 -0
- package/devices/tuya.js +5 -4
- package/devices/xiaomi.js +3 -1
- package/lib/tuya.js +1 -1
- package/lib/xiaomi.js +5 -0
- package/package.json +2 -2
- package/devices/woolley.js +0 -17
package/devices/bosch.js
CHANGED
|
@@ -227,6 +227,21 @@ const fzLocal = {
|
|
|
227
227
|
return result;
|
|
228
228
|
},
|
|
229
229
|
},
|
|
230
|
+
bosch_ignore_dst: {
|
|
231
|
+
cluster: 'genTime',
|
|
232
|
+
type: 'read',
|
|
233
|
+
convert: async (model, msg, publish, options, meta) => {
|
|
234
|
+
if (msg.data.includes('dstStart', 'dstEnd', 'dstShift')) {
|
|
235
|
+
const response = {
|
|
236
|
+
'dstStart': {attribute: 0x0003, status: herdsman.Zcl.Status.SUCCESS, value: 0x00},
|
|
237
|
+
'dstEnd': {attribute: 0x0004, status: herdsman.Zcl.Status.SUCCESS, value: 0x00},
|
|
238
|
+
'dstShift': {attribute: 0x0005, status: herdsman.Zcl.Status.SUCCESS, value: 0x00},
|
|
239
|
+
};
|
|
240
|
+
|
|
241
|
+
await msg.endpoint.readResponse(msg.cluster, msg.meta.zclTransactionSequenceNumber, response);
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
},
|
|
230
245
|
bosch_thermostat: {
|
|
231
246
|
cluster: 'hvacThermostat',
|
|
232
247
|
type: ['attributeReport', 'readResponse'],
|
|
@@ -421,7 +436,13 @@ const definition = [
|
|
|
421
436
|
vendor: 'Bosch',
|
|
422
437
|
description: 'Radiator thermostat II',
|
|
423
438
|
ota: ota.zigbeeOTA,
|
|
424
|
-
fromZigbee: [
|
|
439
|
+
fromZigbee: [
|
|
440
|
+
fz.thermostat,
|
|
441
|
+
fz.battery,
|
|
442
|
+
fzLocal.bosch_ignore_dst,
|
|
443
|
+
fzLocal.bosch_thermostat,
|
|
444
|
+
fzLocal.bosch_userInterface,
|
|
445
|
+
],
|
|
425
446
|
toZigbee: [
|
|
426
447
|
tz.thermostat_occupied_heating_setpoint,
|
|
427
448
|
tz.thermostat_local_temperature_calibration,
|
|
@@ -482,7 +503,7 @@ const definition = [
|
|
|
482
503
|
maximumReportInterval: constants.repInterval.HOUR,
|
|
483
504
|
reportableChange: 1,
|
|
484
505
|
}], boschManufacturer);
|
|
485
|
-
// report boost as it's disabled by thermostat after
|
|
506
|
+
// report boost as it's disabled by thermostat after 5 minutes
|
|
486
507
|
await endpoint.configureReporting('hvacThermostat', [{
|
|
487
508
|
attribute: {ID: 0x4043, type: herdsman.Zcl.DataType.enum8},
|
|
488
509
|
minimumReportInterval: 0,
|
package/devices/gledopto.js
CHANGED
|
@@ -451,6 +451,13 @@ module.exports = [
|
|
|
451
451
|
description: 'Zigbee 6W E26/E27 Bulb RGB+CCT',
|
|
452
452
|
extend: gledoptoExtend.light_onoff_brightness_colortemp_color(),
|
|
453
453
|
},
|
|
454
|
+
{
|
|
455
|
+
zigbeeModel: ['GL-G-004P'],
|
|
456
|
+
model: 'GL-G-004P',
|
|
457
|
+
vendor: 'Gledopto',
|
|
458
|
+
description: 'Zigbee 7W garden light Pro RGB+CCT',
|
|
459
|
+
extend: gledoptoExtend.light_onoff_brightness_colortemp_color({colorTempRange: [158, 495]}),
|
|
460
|
+
},
|
|
454
461
|
{
|
|
455
462
|
zigbeeModel: ['GL-B-007ZS'],
|
|
456
463
|
model: 'GL-B-007ZS',
|
package/devices/heiman.js
CHANGED
|
@@ -394,7 +394,7 @@ module.exports = [
|
|
|
394
394
|
zigbeeModel: ['SGMHM-I1'],
|
|
395
395
|
model: 'SGMHM-I1',
|
|
396
396
|
vendor: 'HEIMAN',
|
|
397
|
-
description: '
|
|
397
|
+
description: 'Methane gas sensor',
|
|
398
398
|
fromZigbee: [fz.ias_gas_alarm_2],
|
|
399
399
|
toZigbee: [],
|
|
400
400
|
exposes: [e.gas()],
|
package/devices/lidl.js
CHANGED
|
@@ -820,7 +820,7 @@ module.exports = [
|
|
|
820
820
|
model: '14153905L',
|
|
821
821
|
vendor: 'Lidl',
|
|
822
822
|
description: 'Livarno Home LED floor lamp',
|
|
823
|
-
extend: tuya.extend.light_onoff_brightness_colortemp({colorTempRange: [153,
|
|
823
|
+
extend: tuya.extend.light_onoff_brightness_colortemp({colorTempRange: [153, 500], noConfigure: true}),
|
|
824
824
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
825
825
|
device.getEndpoint(1).saveClusterAttributeKeyValue('lightingColorCtrl', {colorCapabilities: 16});
|
|
826
826
|
},
|
package/devices/robb.js
CHANGED
|
@@ -6,6 +6,13 @@ const extend = require('../lib/extend');
|
|
|
6
6
|
const e = exposes.presets;
|
|
7
7
|
|
|
8
8
|
module.exports = [
|
|
9
|
+
{
|
|
10
|
+
zigbeeModel: ['ROB_200-060-0'],
|
|
11
|
+
model: 'ROB_200-060-0',
|
|
12
|
+
vendor: 'ROBB',
|
|
13
|
+
description: 'Zigbee LED driver',
|
|
14
|
+
extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [160, 450]}),
|
|
15
|
+
},
|
|
9
16
|
{
|
|
10
17
|
zigbeeModel: ['ROB_200-061-0'],
|
|
11
18
|
model: 'ROB_200-061-0',
|
package/devices/sonoff.js
CHANGED
|
@@ -246,4 +246,17 @@ module.exports = [
|
|
|
246
246
|
toZigbee: [tz.cover_state, tz.cover_position_tilt],
|
|
247
247
|
exposes: [e.cover_position(), e.battery()],
|
|
248
248
|
},
|
|
249
|
+
{
|
|
250
|
+
zigbeeModel: ['Z111PL0H-1JX', 'SA-029-1'],
|
|
251
|
+
model: 'SA-028/SA-029',
|
|
252
|
+
vendor: 'SONOFF',
|
|
253
|
+
whiteLabel: [{vendor: 'Woolley', model: 'SA-029-1'}],
|
|
254
|
+
description: 'Smart Plug',
|
|
255
|
+
extend: extend.switch(),
|
|
256
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
257
|
+
const endpoint = device.getEndpoint(1);
|
|
258
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
|
|
259
|
+
await reporting.onOff(endpoint);
|
|
260
|
+
},
|
|
261
|
+
},
|
|
249
262
|
];
|
package/devices/tuya.js
CHANGED
|
@@ -353,7 +353,7 @@ const fzLocal = {
|
|
|
353
353
|
result['max_brightness'] = utils.mapNumberRange(msg.data['64516'], 0, 1000, 1, 255);
|
|
354
354
|
}
|
|
355
355
|
if (msg.data.hasOwnProperty('61440')) {
|
|
356
|
-
result['brightness'] = utils.mapNumberRange(msg.data['61440'], 0, 1000, 0,
|
|
356
|
+
result['brightness'] = utils.mapNumberRange(msg.data['61440'], 0, 1000, 0, 255);
|
|
357
357
|
}
|
|
358
358
|
return result;
|
|
359
359
|
},
|
|
@@ -1092,6 +1092,7 @@ module.exports = [
|
|
|
1092
1092
|
{modelID: 'TS0202', manufacturerName: '_TZ3000_mmtwjmaq'},
|
|
1093
1093
|
{modelID: 'TS0202', manufacturerName: '_TYZB01_zwvaj5wy'},
|
|
1094
1094
|
{modelID: 'TS0202', manufacturerName: '_TZ3000_bsvqrxru'},
|
|
1095
|
+
{modelID: 'TS0202', manufacturerName: '_TZ3000_wrgn6xrz'},
|
|
1095
1096
|
{modelID: 'TS0202', manufacturerName: '_TYZB01_tv3wxhcz'},
|
|
1096
1097
|
{modelID: 'TS0202', manufacturerName: '_TYZB01_rwb0hxtf'},
|
|
1097
1098
|
{modelID: 'TS0202', manufacturerName: '_TYZB01_hqbdru35'},
|
|
@@ -2224,11 +2225,11 @@ module.exports = [
|
|
|
2224
2225
|
'Mode of this device, in the `heat` mode the TS0601 will remain continuously heating, i.e. it does not regulate ' +
|
|
2225
2226
|
'to the desired temperature. If you want TRV to properly regulate the temperature you need to use mode `auto` ' +
|
|
2226
2227
|
'instead setting the desired temperature.')
|
|
2227
|
-
.withLocalTemperatureCalibration(-9, 9,
|
|
2228
|
+
.withLocalTemperatureCalibration(-9, 9, 0.5, ea.STATE_SET)
|
|
2228
2229
|
.withPreset(['schedule', 'manual', 'boost', 'complex', 'comfort', 'eco', 'away'])
|
|
2229
2230
|
.withRunningState(['idle', 'heat'], ea.STATE),
|
|
2230
2231
|
e.auto_lock(), e.away_mode(), e.away_preset_days(), e.boost_time(), e.comfort_temperature(), e.eco_temperature(), e.force(),
|
|
2231
|
-
e.max_temperature(), e.min_temperature(), e.away_preset_temperature(),
|
|
2232
|
+
e.max_temperature().withValueMin(16).withValueMax(70), e.min_temperature(), e.away_preset_temperature(),
|
|
2232
2233
|
exposes.composite('programming_mode', 'programming_mode', ea.STATE).withDescription('Schedule MODE ⏱ - In this mode, ' +
|
|
2233
2234
|
'the device executes a preset week programming temperature time and temperature.')
|
|
2234
2235
|
.withFeature(e.week())
|
|
@@ -2611,7 +2612,7 @@ module.exports = [
|
|
|
2611
2612
|
whiteLabel: [{vendor: 'LELLKI', model: 'TS011F_plug'}, {vendor: 'NEO', model: 'NAS-WR01B'},
|
|
2612
2613
|
{vendor: 'BlitzWolf', model: 'BW-SHP15'}, {vendor: 'Nous', model: 'A1Z'}, {vendor: 'BlitzWolf', model: 'BW-SHP13'},
|
|
2613
2614
|
{vendor: 'MatSee Plus', model: 'PJ-ZSW01'}, {vendor: 'MODEMIX', model: 'MOD037'}, {vendor: 'MODEMIX', model: 'MOD048'},
|
|
2614
|
-
{vendor: 'Coswall', model: 'CS-AJ-DE2U-ZG-11'}, {vendor: 'Aubess', model: 'TS011F_plug_1'}],
|
|
2615
|
+
{vendor: 'Coswall', model: 'CS-AJ-DE2U-ZG-11'}, {vendor: 'Aubess', model: 'TS011F_plug_1'}, {vendor: 'Immax', model: '07752L'}],
|
|
2615
2616
|
ota: ota.zigbeeOTA,
|
|
2616
2617
|
extend: tuya.extend.switch({electricalMeasurements: true, powerOutageMemory: true, indicatorMode: true, childLock: true}),
|
|
2617
2618
|
configure: async (device, coordinatorEndpoint, logger) => {
|
package/devices/xiaomi.js
CHANGED
|
@@ -745,7 +745,9 @@ module.exports = [
|
|
|
745
745
|
fromZigbee: [fz.xiaomi_contact, fz.ias_contact_alarm_1, fz.aqara_opple],
|
|
746
746
|
toZigbee: [],
|
|
747
747
|
meta: {battery: {voltageToPercentage: '3V_2850_3000'}},
|
|
748
|
-
exposes: [e.contact(), e.battery(), e.battery_voltage()
|
|
748
|
+
exposes: [e.contact(), e.battery(), e.battery_voltage(),
|
|
749
|
+
exposes.binary('battery_cover', ea.STATE, 'OPEN', 'CLOSE'),
|
|
750
|
+
],
|
|
749
751
|
},
|
|
750
752
|
{
|
|
751
753
|
zigbeeModel: ['lumi.dimmer.rcbac1'],
|
package/lib/tuya.js
CHANGED
|
@@ -1621,7 +1621,7 @@ const tuyaTz = {
|
|
|
1621
1621
|
datapoints: {
|
|
1622
1622
|
key: [
|
|
1623
1623
|
'temperature_unit', 'temperature_calibration', 'humidity_calibration', 'alarm_switch',
|
|
1624
|
-
'state', 'brightness', 'min_brightness', 'max_brightness', 'power_on_behavior',
|
|
1624
|
+
'state', 'brightness', 'min_brightness', 'max_brightness', 'power_on_behavior', 'position',
|
|
1625
1625
|
'countdown', 'light_type', 'silence', 'self_test', 'child_lock', 'open_window', 'open_window_temperature', 'frost_protection',
|
|
1626
1626
|
'system_mode', 'heating_stop', 'current_heating_setpoint', 'local_temperature_calibration', 'preset', 'boost_timeset_countdown',
|
|
1627
1627
|
'holiday_start_stop', 'holiday_temperature', 'comfort_temperature', 'eco_temperature', 'working_day',
|
package/lib/xiaomi.js
CHANGED
|
@@ -502,6 +502,11 @@ const numericAttributes2Payload = async (msg, meta, model, options, dataObject)
|
|
|
502
502
|
payload.buzzer_manual_alarm = value === 1;
|
|
503
503
|
}
|
|
504
504
|
break;
|
|
505
|
+
case '320':
|
|
506
|
+
if (['MCCGQ13LM'].includes(model.model)) {
|
|
507
|
+
payload.battery_cover = {0: 'CLOSE', 1: 'OPEN'}[value];
|
|
508
|
+
}
|
|
509
|
+
break;
|
|
505
510
|
case '322':
|
|
506
511
|
if (['RTCZCGQ11LM'].includes(model.model)) {
|
|
507
512
|
payload.presence = {0: false, 1: true, 255: null}[value];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zigbee-herdsman-converters",
|
|
3
|
-
"version": "15.0.
|
|
3
|
+
"version": "15.0.74",
|
|
4
4
|
"description": "Collection of device converters to be used with zigbee-herdsman",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"files": [
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"buffer-crc32": "^0.2.13",
|
|
39
39
|
"https-proxy-agent": "^5.0.1",
|
|
40
40
|
"tar-stream": "^3.0.0",
|
|
41
|
-
"zigbee-herdsman": "^0.14.
|
|
41
|
+
"zigbee-herdsman": "^0.14.99"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"eslint": "*",
|
package/devices/woolley.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
const extend = require('../lib/extend');
|
|
2
|
-
const reporting = require('../lib/reporting');
|
|
3
|
-
|
|
4
|
-
module.exports = [
|
|
5
|
-
{
|
|
6
|
-
zigbeeModel: ['Z111PL0H-1JX', 'SA-029-1'],
|
|
7
|
-
model: 'SA-029',
|
|
8
|
-
vendor: 'Woolley',
|
|
9
|
-
description: 'Smart Plug',
|
|
10
|
-
extend: extend.switch(),
|
|
11
|
-
configure: async (device, coordinatorEndpoint, logger) => {
|
|
12
|
-
const endpoint = device.getEndpoint(1);
|
|
13
|
-
await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
|
|
14
|
-
await reporting.onOff(endpoint);
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
];
|