zigbee-herdsman-converters 25.55.0 → 25.57.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 +51 -0
- package/dist/devices/lixee.js +8 -8
- package/dist/devices/lixee.js.map +1 -1
- package/dist/devices/owon.d.ts.map +1 -1
- package/dist/devices/owon.js +23 -0
- package/dist/devices/owon.js.map +1 -1
- package/dist/devices/philips.d.ts.map +1 -1
- package/dist/devices/philips.js +39 -18
- package/dist/devices/philips.js.map +1 -1
- package/dist/devices/somfy.d.ts.map +1 -1
- package/dist/devices/somfy.js +7 -0
- package/dist/devices/somfy.js.map +1 -1
- package/dist/devices/sonoff.d.ts.map +1 -1
- package/dist/devices/sonoff.js +290 -24
- package/dist/devices/sonoff.js.map +1 -1
- package/dist/devices/tuya.d.ts.map +1 -1
- package/dist/devices/tuya.js +249 -60
- package/dist/devices/tuya.js.map +1 -1
- package/dist/devices/zemismart.d.ts.map +1 -1
- package/dist/devices/zemismart.js +0 -11
- package/dist/devices/zemismart.js.map +1 -1
- package/dist/lib/modernExtend.d.ts.map +1 -1
- package/dist/lib/modernExtend.js +3 -1
- package/dist/lib/modernExtend.js.map +1 -1
- package/dist/lib/tuya.d.ts.map +1 -1
- package/dist/lib/tuya.js +3 -1
- package/dist/lib/tuya.js.map +1 -1
- package/dist/models-index.json +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"somfy.d.ts","sourceRoot":"","sources":["../../src/devices/somfy.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,cAAc,CAAC;AAIvD,eAAO,MAAM,WAAW,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"somfy.d.ts","sourceRoot":"","sources":["../../src/devices/somfy.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,cAAc,CAAC;AAIvD,eAAO,MAAM,WAAW,EAAE,oBAAoB,EA4G7C,CAAC"}
|
package/dist/devices/somfy.js
CHANGED
|
@@ -76,6 +76,13 @@ exports.definitions = [
|
|
|
76
76
|
description: "Sonesse 30 DC 24V roller shades",
|
|
77
77
|
extend: [m.windowCovering({ controls: ["lift"] })],
|
|
78
78
|
},
|
|
79
|
+
{
|
|
80
|
+
zigbeeModel: ["Sonesse2 40 Zigbee Roller"],
|
|
81
|
+
model: "1245920",
|
|
82
|
+
vendor: "SOMFY",
|
|
83
|
+
description: "Sonesse2 40 Zigbee roller shades",
|
|
84
|
+
extend: [m.windowCovering({ controls: ["lift"] })],
|
|
85
|
+
},
|
|
79
86
|
{
|
|
80
87
|
zigbeeModel: ["Ysia 5 HP Zigbee"],
|
|
81
88
|
model: "1871154",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"somfy.js","sourceRoot":"","sources":["../../src/devices/somfy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"somfy.js","sourceRoot":"","sources":["../../src/devices/somfy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sonoff.d.ts","sourceRoot":"","sources":["../../src/devices/sonoff.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAC,oBAAoB,
|
|
1
|
+
{"version":3,"file":"sonoff.d.ts","sourceRoot":"","sources":["../../src/devices/sonoff.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAC,oBAAoB,EAAyC,MAAM,cAAc,CAAC;AA8I/F,MAAM,WAAW,aAAa;IAC1B,UAAU,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;QACzB,0BAA0B,EAAE,MAAM,CAAC;QACnC,4BAA4B,EAAE,MAAM,CAAC;QACrC,cAAc,EAAE,MAAM,CAAC;QACvB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,qBAAqB,EAAE,MAAM,CAAC;QAC9B,mBAAmB,EAAE,MAAM,CAAC;QAE5B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,QAAQ,EAAE;QACN,YAAY,EAAE;YAAC,IAAI,EAAE,MAAM,EAAE,CAAA;SAAC,CAAC;KAClC,CAAC;IACF,gBAAgB,EAAE,KAAK,CAAC;CAC3B;AA+8BD,eAAO,MAAM,WAAW,EAAE,oBAAoB,EAwrD7C,CAAC"}
|
package/dist/devices/sonoff.js
CHANGED
|
@@ -131,10 +131,10 @@ const sonoffExtend = {
|
|
|
131
131
|
commandsResponse: {},
|
|
132
132
|
}),
|
|
133
133
|
inchingControlSet: (args = {}) => {
|
|
134
|
-
const {
|
|
134
|
+
const { endpointNames = undefined } = args;
|
|
135
135
|
const clusterName = "customClusterEwelink";
|
|
136
136
|
const commandName = "protocolData";
|
|
137
|
-
|
|
137
|
+
const exposes = utils.exposeEndpoints(e
|
|
138
138
|
.composite("inching_control_set", "inching_control_set", ea.SET)
|
|
139
139
|
.withDescription("Device Inching function Settings. The device will automatically turn off (turn on) " +
|
|
140
140
|
"after each turn on (turn off) for a specified period of time.")
|
|
@@ -146,16 +146,19 @@ const sonoffExtend = {
|
|
|
146
146
|
.withValueMin(0.5)
|
|
147
147
|
.withValueMax(3599.5)
|
|
148
148
|
.withValueStep(0.5))
|
|
149
|
-
.withFeature(e.binary("inching_mode", ea.SET, "ON", "OFF").withDescription("Set inching off or inching on mode.").withValueToggle("ON"));
|
|
150
|
-
if (entityCategory)
|
|
151
|
-
exposes = exposes.withCategory(entityCategory);
|
|
149
|
+
.withFeature(e.binary("inching_mode", ea.SET, "ON", "OFF").withDescription("Set inching off or inching on mode.").withValueToggle("ON")), endpointNames);
|
|
152
150
|
const toZigbee = [
|
|
153
151
|
{
|
|
154
152
|
key: ["inching_control_set"],
|
|
155
153
|
convertSet: async (entity, key, value, meta) => {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
154
|
+
let inchingControl = "inching_control";
|
|
155
|
+
let inchingTime = "inching_time";
|
|
156
|
+
let inchingMode = "inching_mode";
|
|
157
|
+
if (meta.endpoint_name) {
|
|
158
|
+
inchingControl = `inching_control_${meta.endpoint_name}`;
|
|
159
|
+
inchingTime = `inching_time_${meta.endpoint_name}`;
|
|
160
|
+
inchingMode = `inching_mode_${meta.endpoint_name}`;
|
|
161
|
+
}
|
|
159
162
|
const tmpTime = Number(Math.round(Number((value[inchingTime] * 2).toFixed(1))).toFixed(1));
|
|
160
163
|
const payloadValue = [];
|
|
161
164
|
payloadValue[0] = 0x01; // Cmd
|
|
@@ -169,7 +172,12 @@ const sonoffExtend = {
|
|
|
169
172
|
if (value[inchingMode] !== "OFF") {
|
|
170
173
|
payloadValue[4] |= 0x01;
|
|
171
174
|
}
|
|
172
|
-
|
|
175
|
+
if (meta.endpoint_name === "l2") {
|
|
176
|
+
payloadValue[5] = 0x01; // Channel 2
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
payloadValue[5] = 0x00; // Channel 1
|
|
180
|
+
}
|
|
173
181
|
payloadValue[6] = tmpTime & 0xff; // Timeout
|
|
174
182
|
payloadValue[7] = (tmpTime >> 8) & 0xff;
|
|
175
183
|
payloadValue[8] = 0x00; // Reserve
|
|
@@ -184,7 +192,7 @@ const sonoffExtend = {
|
|
|
184
192
|
},
|
|
185
193
|
];
|
|
186
194
|
return {
|
|
187
|
-
exposes:
|
|
195
|
+
exposes: exposes,
|
|
188
196
|
fromZigbee: [],
|
|
189
197
|
toZigbee,
|
|
190
198
|
isModernExtend: true,
|
|
@@ -492,16 +500,13 @@ const sonoffExtend = {
|
|
|
492
500
|
};
|
|
493
501
|
},
|
|
494
502
|
externalSwitchTriggerMode: (args = {}) => {
|
|
495
|
-
const { entityCategory } = args;
|
|
496
503
|
const clusterName = "customClusterEwelink";
|
|
497
504
|
const attributeName = "externalTriggerMode";
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
.withDescription("External trigger mode, which can be one of edge, pulse, " +
|
|
505
|
+
const { endpointNames = undefined } = args;
|
|
506
|
+
const description = "External trigger mode, which can be one of edge, pulse, " +
|
|
501
507
|
"following(off), following(on). The appropriate triggering mode can be selected according to the type of " +
|
|
502
|
-
"external switch to achieve a better use experience."
|
|
503
|
-
|
|
504
|
-
exposes = exposes.withCategory(entityCategory);
|
|
508
|
+
"external switch to achieve a better use experience.";
|
|
509
|
+
const exposes = utils.exposeEndpoints(e.enum("external_trigger_mode", ea.ALL, ["edge", "pulse", "following(off)", "following(on)"]).withDescription(description), endpointNames);
|
|
505
510
|
const fromZigbee = [
|
|
506
511
|
{
|
|
507
512
|
cluster: clusterName,
|
|
@@ -541,7 +546,7 @@ const sonoffExtend = {
|
|
|
541
546
|
},
|
|
542
547
|
];
|
|
543
548
|
return {
|
|
544
|
-
exposes:
|
|
549
|
+
exposes: exposes,
|
|
545
550
|
fromZigbee,
|
|
546
551
|
toZigbee,
|
|
547
552
|
isModernExtend: true,
|
|
@@ -1127,9 +1132,9 @@ exports.definitions = [
|
|
|
1127
1132
|
},
|
|
1128
1133
|
{
|
|
1129
1134
|
zigbeeModel: ["Dongle-PMG24_ZBRouter"],
|
|
1130
|
-
model: "
|
|
1135
|
+
model: "Dongle-PMG24",
|
|
1131
1136
|
vendor: "SONOFF",
|
|
1132
|
-
description: "
|
|
1137
|
+
description: "Zigbee Dongle Plus MG24 (EFR32MG24) with router firmware",
|
|
1133
1138
|
fromZigbee: [fz.linkquality_from_basic],
|
|
1134
1139
|
toZigbee: [],
|
|
1135
1140
|
exposes: [],
|
|
@@ -1323,6 +1328,106 @@ exports.definitions = [
|
|
|
1323
1328
|
}),
|
|
1324
1329
|
],
|
|
1325
1330
|
},
|
|
1331
|
+
{
|
|
1332
|
+
zigbeeModel: ["SNZB-02DR2"],
|
|
1333
|
+
model: "SNZB-02DR2",
|
|
1334
|
+
vendor: "SONOFF",
|
|
1335
|
+
description: "Temperature and humidity sensor with display and relay control",
|
|
1336
|
+
extend: [
|
|
1337
|
+
m.deviceAddCustomCluster("customSonoffSnzb02dr2", {
|
|
1338
|
+
ID: 0xfc11,
|
|
1339
|
+
attributes: {
|
|
1340
|
+
comfortTemperatureMax: { ID: 0x0003, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
|
|
1341
|
+
comfortTemperatureMin: { ID: 0x0004, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
|
|
1342
|
+
comfortHumidityMin: { ID: 0x0005, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
|
|
1343
|
+
comfortHumidityMax: { ID: 0x0006, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
|
|
1344
|
+
temperatureUnits: { ID: 0x0007, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
|
|
1345
|
+
temperatureCalibration: { ID: 0x2003, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
|
|
1346
|
+
humidityCalibration: { ID: 0x2004, type: zigbee_herdsman_1.Zcl.DataType.INT16 },
|
|
1347
|
+
},
|
|
1348
|
+
commands: {},
|
|
1349
|
+
commandsResponse: {},
|
|
1350
|
+
}),
|
|
1351
|
+
m.battery({ voltage: true, voltageReporting: true }),
|
|
1352
|
+
m.temperature(),
|
|
1353
|
+
m.humidity(),
|
|
1354
|
+
m.bindCluster({ cluster: "genPollCtrl", clusterType: "input" }),
|
|
1355
|
+
m.numeric({
|
|
1356
|
+
name: "comfort_temperature_min",
|
|
1357
|
+
cluster: "customSonoffSnzb02dr2",
|
|
1358
|
+
attribute: "comfortTemperatureMin",
|
|
1359
|
+
description: "Minimum temperature that is considered comfortable. The device will display ❄️ when the temperature is lower than this value. Note: wake up the device by pressing the button on the back before changing this value.",
|
|
1360
|
+
valueMin: -10,
|
|
1361
|
+
valueMax: 60,
|
|
1362
|
+
scale: 100,
|
|
1363
|
+
valueStep: 0.1,
|
|
1364
|
+
unit: "°C",
|
|
1365
|
+
}),
|
|
1366
|
+
m.numeric({
|
|
1367
|
+
name: "comfort_temperature_max",
|
|
1368
|
+
cluster: "customSonoffSnzb02dr2",
|
|
1369
|
+
attribute: "comfortTemperatureMax",
|
|
1370
|
+
description: "Maximum temperature that is considered comfortable. The device will display 🔥 when the temperature is higher than this value. Note: wake up the device by pressing the button on the back before changing this value.",
|
|
1371
|
+
valueMin: -10,
|
|
1372
|
+
valueMax: 60,
|
|
1373
|
+
scale: 100,
|
|
1374
|
+
valueStep: 0.1,
|
|
1375
|
+
unit: "°C",
|
|
1376
|
+
}),
|
|
1377
|
+
m.numeric({
|
|
1378
|
+
name: "comfort_humidity_min",
|
|
1379
|
+
cluster: "customSonoffSnzb02dr2",
|
|
1380
|
+
attribute: "comfortHumidityMin",
|
|
1381
|
+
description: "Minimum relative humidity that is considered comfortable. The device will display ☀️ when the humidity is lower than this value. Note: wake up the device by pressing the button on the back before changing this value.",
|
|
1382
|
+
valueMin: 5,
|
|
1383
|
+
valueMax: 95,
|
|
1384
|
+
scale: 100,
|
|
1385
|
+
valueStep: 0.1,
|
|
1386
|
+
unit: "%",
|
|
1387
|
+
}),
|
|
1388
|
+
m.numeric({
|
|
1389
|
+
name: "comfort_humidity_max",
|
|
1390
|
+
cluster: "customSonoffSnzb02dr2",
|
|
1391
|
+
attribute: "comfortHumidityMax",
|
|
1392
|
+
description: "Maximum relative humidity that is considered comfortable. The device will display 💧 when the humidity is higher than this value. Note: wake up the device by pressing the button on the back before changing this value.",
|
|
1393
|
+
valueMin: 5,
|
|
1394
|
+
valueMax: 95,
|
|
1395
|
+
scale: 100,
|
|
1396
|
+
valueStep: 0.1,
|
|
1397
|
+
unit: "%",
|
|
1398
|
+
}),
|
|
1399
|
+
m.enumLookup({
|
|
1400
|
+
name: "temperature_units",
|
|
1401
|
+
lookup: { celsius: 0, fahrenheit: 1 },
|
|
1402
|
+
cluster: "customSonoffSnzb02dr2",
|
|
1403
|
+
attribute: "temperatureUnits",
|
|
1404
|
+
description: "The unit of the temperature displayed on the device screen. Note: wake up the device by pressing the button on the back before changing this value.",
|
|
1405
|
+
}),
|
|
1406
|
+
m.numeric({
|
|
1407
|
+
name: "temperature_calibration",
|
|
1408
|
+
cluster: "customSonoffSnzb02dr2",
|
|
1409
|
+
attribute: "temperatureCalibration",
|
|
1410
|
+
description: "Offset to add/subtract to the reported temperature",
|
|
1411
|
+
valueMin: -50,
|
|
1412
|
+
valueMax: 50,
|
|
1413
|
+
scale: 100,
|
|
1414
|
+
valueStep: 0.1,
|
|
1415
|
+
unit: "°C",
|
|
1416
|
+
}),
|
|
1417
|
+
m.numeric({
|
|
1418
|
+
name: "humidity_calibration",
|
|
1419
|
+
cluster: "customSonoffSnzb02dr2",
|
|
1420
|
+
attribute: "humidityCalibration",
|
|
1421
|
+
description: "Offset to add/subtract to the reported relative humidity",
|
|
1422
|
+
valueMin: -50,
|
|
1423
|
+
valueMax: 50,
|
|
1424
|
+
scale: 100,
|
|
1425
|
+
valueStep: 0.1,
|
|
1426
|
+
unit: "%",
|
|
1427
|
+
}),
|
|
1428
|
+
],
|
|
1429
|
+
ota: true,
|
|
1430
|
+
},
|
|
1326
1431
|
{
|
|
1327
1432
|
fingerprint: [
|
|
1328
1433
|
{
|
|
@@ -1412,13 +1517,22 @@ exports.definitions = [
|
|
|
1412
1517
|
},
|
|
1413
1518
|
{
|
|
1414
1519
|
zigbeeModel: ["Dongle-M_ZBRouter"],
|
|
1415
|
-
model: "
|
|
1520
|
+
model: "Dongle-M",
|
|
1416
1521
|
vendor: "SONOFF",
|
|
1417
1522
|
description: "Dongle Max MG24 (EFR32MG24) with router firmware",
|
|
1418
1523
|
fromZigbee: [fz.linkquality_from_basic],
|
|
1419
1524
|
toZigbee: [],
|
|
1420
1525
|
extend: [m.forcePowerSource({ powerSource: "Mains (single phase)" })],
|
|
1421
1526
|
},
|
|
1527
|
+
{
|
|
1528
|
+
zigbeeModel: ["Dongle-LMG21_ZBRouter"],
|
|
1529
|
+
model: "Dongle-LMG21",
|
|
1530
|
+
vendor: "SONOFF",
|
|
1531
|
+
description: "Dongle Lite Zigbee MG21 (EFR32MG21) with router firmware",
|
|
1532
|
+
fromZigbee: [fz.linkquality_from_basic],
|
|
1533
|
+
toZigbee: [],
|
|
1534
|
+
extend: [m.forcePowerSource({ powerSource: "Mains (single phase)" })],
|
|
1535
|
+
},
|
|
1422
1536
|
{
|
|
1423
1537
|
zigbeeModel: ["ZBCurtain"],
|
|
1424
1538
|
model: "ZBCurtain",
|
|
@@ -2042,8 +2156,8 @@ exports.definitions = [
|
|
|
2042
2156
|
valueOff: [false, 0],
|
|
2043
2157
|
valueOn: [true, 1],
|
|
2044
2158
|
}),
|
|
2045
|
-
sonoffExtend.externalSwitchTriggerMode(
|
|
2046
|
-
sonoffExtend.inchingControlSet(
|
|
2159
|
+
sonoffExtend.externalSwitchTriggerMode(),
|
|
2160
|
+
sonoffExtend.inchingControlSet(),
|
|
2047
2161
|
],
|
|
2048
2162
|
ota: true,
|
|
2049
2163
|
configure: async (device, coordinatorEndpoint) => {
|
|
@@ -2325,7 +2439,7 @@ exports.definitions = [
|
|
|
2325
2439
|
description: "The motor's current operating status, such as forward rotation, reverse rotation, and stop.",
|
|
2326
2440
|
access: "STATE_GET",
|
|
2327
2441
|
}),
|
|
2328
|
-
sonoffExtend.externalSwitchTriggerMode(
|
|
2442
|
+
sonoffExtend.externalSwitchTriggerMode(),
|
|
2329
2443
|
],
|
|
2330
2444
|
ota: true,
|
|
2331
2445
|
configure: async (device, coordinatorEndpoint) => {
|
|
@@ -2333,5 +2447,157 @@ exports.definitions = [
|
|
|
2333
2447
|
await endpoint.read("customClusterEwelink", ["radioPower", 0x0016, 0x5012, 0x5013], defaultResponseOptions);
|
|
2334
2448
|
},
|
|
2335
2449
|
},
|
|
2450
|
+
{
|
|
2451
|
+
zigbeeModel: ["MINI-ZB2GS"],
|
|
2452
|
+
model: "MINI-ZB2GS",
|
|
2453
|
+
vendor: "SONOFF",
|
|
2454
|
+
description: "Zigbee dual-channel smart switch",
|
|
2455
|
+
exposes: [],
|
|
2456
|
+
ota: true,
|
|
2457
|
+
extend: [
|
|
2458
|
+
m.deviceEndpoints({ endpoints: { l1: 1, l2: 2 } }),
|
|
2459
|
+
m.commandsOnOff({ commands: ["toggle"], endpointNames: ["l1", "l2"] }),
|
|
2460
|
+
m.onOff({ endpointNames: ["l1", "l2"] }),
|
|
2461
|
+
sonoffExtend.addCustomClusterEwelink(),
|
|
2462
|
+
sonoffExtend.externalSwitchTriggerMode({ endpointNames: ["l1", "l2"] }),
|
|
2463
|
+
sonoffExtend.detachRelayModeControl(2),
|
|
2464
|
+
sonoffExtend.inchingControlSet({ endpointNames: ["l1", "l2"] }),
|
|
2465
|
+
m.binary({
|
|
2466
|
+
name: "network_indicator",
|
|
2467
|
+
cluster: "customClusterEwelink",
|
|
2468
|
+
attribute: "networkLed",
|
|
2469
|
+
description: "Network indicator settings, turn off/on the blue online status network indicator.",
|
|
2470
|
+
valueOff: [false, 0],
|
|
2471
|
+
valueOn: [true, 1],
|
|
2472
|
+
}),
|
|
2473
|
+
m.binary({
|
|
2474
|
+
name: "turbo_mode",
|
|
2475
|
+
cluster: "customClusterEwelink",
|
|
2476
|
+
attribute: "radioPower",
|
|
2477
|
+
description: "Enable/disable Radio power turbo mode",
|
|
2478
|
+
entityCategory: "config",
|
|
2479
|
+
valueOff: [false, 0x09],
|
|
2480
|
+
valueOn: [true, 0x14],
|
|
2481
|
+
}),
|
|
2482
|
+
m.binary({
|
|
2483
|
+
name: "delayed_power_on_state_channel_1",
|
|
2484
|
+
cluster: "customClusterEwelink",
|
|
2485
|
+
attribute: "delayedPowerOnState",
|
|
2486
|
+
description: "Delayed Power-on State(Channel 1)",
|
|
2487
|
+
entityCategory: "config",
|
|
2488
|
+
valueOff: [false, 0],
|
|
2489
|
+
valueOn: [true, 1],
|
|
2490
|
+
endpointName: "l1",
|
|
2491
|
+
}),
|
|
2492
|
+
m.binary({
|
|
2493
|
+
name: "delayed_power_on_state_channel_2",
|
|
2494
|
+
cluster: "customClusterEwelink",
|
|
2495
|
+
attribute: "delayedPowerOnState",
|
|
2496
|
+
description: "Delayed Power-on State(Channel 2)",
|
|
2497
|
+
entityCategory: "config",
|
|
2498
|
+
valueOff: [false, 0],
|
|
2499
|
+
valueOn: [true, 1],
|
|
2500
|
+
endpointName: "l2",
|
|
2501
|
+
}),
|
|
2502
|
+
m.numeric({
|
|
2503
|
+
name: "delayed_power_on_time",
|
|
2504
|
+
cluster: "customClusterEwelink",
|
|
2505
|
+
attribute: "delayedPowerOnTime",
|
|
2506
|
+
description: "Delayed Power-on time",
|
|
2507
|
+
entityCategory: "config",
|
|
2508
|
+
valueMin: 0.5,
|
|
2509
|
+
valueMax: 3599.5,
|
|
2510
|
+
valueStep: 0.5,
|
|
2511
|
+
unit: "seconds",
|
|
2512
|
+
scale: 2,
|
|
2513
|
+
endpointNames: ["l1", "l2"],
|
|
2514
|
+
}),
|
|
2515
|
+
],
|
|
2516
|
+
configure: async (device, coordinatorEndpoint) => {
|
|
2517
|
+
const endpoint1 = device.getEndpoint(1);
|
|
2518
|
+
await reporting.bind(endpoint1, coordinatorEndpoint, ["genOnOff", "customClusterEwelink"]);
|
|
2519
|
+
await reporting.onOff(endpoint1, { min: 1, max: 1800, change: 0 });
|
|
2520
|
+
await endpoint1.read("genOnOff", [0x0000, 0x4003], defaultResponseOptions);
|
|
2521
|
+
await endpoint1.read("customClusterEwelink", [0x0014, 0x0015, 0x0016, 0x0019], defaultResponseOptions);
|
|
2522
|
+
await endpoint1.configureReporting("customClusterEwelink", [
|
|
2523
|
+
{ attribute: "externalTriggerMode", minimumReportInterval: 0, maximumReportInterval: 3600, reportableChange: 1 },
|
|
2524
|
+
]);
|
|
2525
|
+
const endpoint2 = device.getEndpoint(2);
|
|
2526
|
+
await reporting.bind(endpoint2, coordinatorEndpoint, ["genOnOff", "customClusterEwelink"]);
|
|
2527
|
+
await reporting.onOff(endpoint2, { min: 1, max: 1800, change: 0 });
|
|
2528
|
+
await endpoint2.read("genOnOff", [0x0000, 0x4003], defaultResponseOptions);
|
|
2529
|
+
await endpoint1.read("customClusterEwelink", [0x0014, 0x0015, 0x0016], defaultResponseOptions);
|
|
2530
|
+
await endpoint2.configureReporting("customClusterEwelink", [
|
|
2531
|
+
{ attribute: "externalTriggerMode", minimumReportInterval: 0, maximumReportInterval: 3600, reportableChange: 1 },
|
|
2532
|
+
]);
|
|
2533
|
+
},
|
|
2534
|
+
},
|
|
2535
|
+
{
|
|
2536
|
+
zigbeeModel: ["MINI-ZB2GS-L"],
|
|
2537
|
+
model: "MINI-ZB2GS-L",
|
|
2538
|
+
vendor: "SONOFF",
|
|
2539
|
+
description: "Zigbee dual-channel smart switch",
|
|
2540
|
+
exposes: [],
|
|
2541
|
+
ota: true,
|
|
2542
|
+
extend: [
|
|
2543
|
+
m.deviceEndpoints({ endpoints: { l1: 1, l2: 2 } }),
|
|
2544
|
+
m.commandsOnOff({ commands: ["toggle"], endpointNames: ["l1", "l2"] }),
|
|
2545
|
+
m.onOff({ endpointNames: ["l1", "l2"] }),
|
|
2546
|
+
sonoffExtend.addCustomClusterEwelink(),
|
|
2547
|
+
sonoffExtend.externalSwitchTriggerMode({ endpointNames: ["l1", "l2"] }),
|
|
2548
|
+
sonoffExtend.detachRelayModeControl(2),
|
|
2549
|
+
m.binary({
|
|
2550
|
+
name: "delayed_power_on_state_channel_1",
|
|
2551
|
+
cluster: "customClusterEwelink",
|
|
2552
|
+
attribute: "delayedPowerOnState",
|
|
2553
|
+
description: "Delayed Power-on State(Channel 1)",
|
|
2554
|
+
entityCategory: "config",
|
|
2555
|
+
valueOff: [false, 0],
|
|
2556
|
+
valueOn: [true, 1],
|
|
2557
|
+
endpointName: "l1",
|
|
2558
|
+
}),
|
|
2559
|
+
m.binary({
|
|
2560
|
+
name: "delayed_power_on_state_channel_2",
|
|
2561
|
+
cluster: "customClusterEwelink",
|
|
2562
|
+
attribute: "delayedPowerOnState",
|
|
2563
|
+
description: "Delayed Power-on State(Channel 2)",
|
|
2564
|
+
entityCategory: "config",
|
|
2565
|
+
valueOff: [false, 0],
|
|
2566
|
+
valueOn: [true, 1],
|
|
2567
|
+
endpointName: "l2",
|
|
2568
|
+
}),
|
|
2569
|
+
m.numeric({
|
|
2570
|
+
name: "delayed_power_on_time",
|
|
2571
|
+
cluster: "customClusterEwelink",
|
|
2572
|
+
attribute: "delayedPowerOnTime",
|
|
2573
|
+
description: "Delayed Power-on time",
|
|
2574
|
+
entityCategory: "config",
|
|
2575
|
+
valueMin: 0.5,
|
|
2576
|
+
valueMax: 3599.5,
|
|
2577
|
+
valueStep: 0.5,
|
|
2578
|
+
unit: "seconds",
|
|
2579
|
+
scale: 2,
|
|
2580
|
+
endpointNames: ["l1", "l2"],
|
|
2581
|
+
}),
|
|
2582
|
+
],
|
|
2583
|
+
configure: async (device, coordinatorEndpoint) => {
|
|
2584
|
+
const endpoint1 = device.getEndpoint(1);
|
|
2585
|
+
await reporting.bind(endpoint1, coordinatorEndpoint, ["genOnOff", "customClusterEwelink"]);
|
|
2586
|
+
await reporting.onOff(endpoint1, { min: 1, max: 1800, change: 0 });
|
|
2587
|
+
await endpoint1.read("genOnOff", [0x0000, 0x4003], defaultResponseOptions);
|
|
2588
|
+
await endpoint1.read("customClusterEwelink", [0x0014, 0x0015, 0x0016, 0x0019], defaultResponseOptions);
|
|
2589
|
+
await endpoint1.configureReporting("customClusterEwelink", [
|
|
2590
|
+
{ attribute: "externalTriggerMode", minimumReportInterval: 0, maximumReportInterval: 3600, reportableChange: 1 },
|
|
2591
|
+
]);
|
|
2592
|
+
const endpoint2 = device.getEndpoint(2);
|
|
2593
|
+
await reporting.bind(endpoint2, coordinatorEndpoint, ["genOnOff", "customClusterEwelink"]);
|
|
2594
|
+
await reporting.onOff(endpoint2, { min: 1, max: 1800, change: 0 });
|
|
2595
|
+
await endpoint2.read("genOnOff", [0x0000, 0x4003], defaultResponseOptions);
|
|
2596
|
+
await endpoint1.read("customClusterEwelink", [0x0014, 0x0015, 0x0016], defaultResponseOptions);
|
|
2597
|
+
await endpoint2.configureReporting("customClusterEwelink", [
|
|
2598
|
+
{ attribute: "externalTriggerMode", minimumReportInterval: 0, maximumReportInterval: 3600, reportableChange: 1 },
|
|
2599
|
+
]);
|
|
2600
|
+
},
|
|
2601
|
+
},
|
|
2336
2602
|
];
|
|
2337
2603
|
//# sourceMappingURL=sonoff.js.map
|