zigbee-herdsman-converters 14.0.617 → 14.0.618

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.
@@ -77,7 +77,7 @@ module.exports = [
77
77
  description: 'Dual curtain/blind module',
78
78
  fromZigbee: [fz.cover_position_tilt, fz.tuya_cover_options],
79
79
  toZigbee: [tz.cover_state, tz.cover_position_tilt, tz.tuya_cover_calibration, tz.tuya_cover_reversal],
80
- meta: {multiEndpoint: true},
80
+ meta: {multiEndpoint: true, coverInverted: true},
81
81
  endpoint: (device) => {
82
82
  return {'left': 1, 'right': 2};
83
83
  },
@@ -984,7 +984,14 @@ module.exports = [
984
984
  zigbeeModel: ['929003053001'],
985
985
  model: '929003053001',
986
986
  vendor: 'Philips',
987
- description: 'Hue Sana wall light',
987
+ description: 'Hue Sana wall light (white)',
988
+ extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
989
+ },
990
+ {
991
+ zigbeeModel: ['929003052901'],
992
+ model: '929003052901',
993
+ vendor: 'Philips',
994
+ description: 'Hue Sana wall light (black)',
988
995
  extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
989
996
  },
990
997
  {
package/devices/siglis.js CHANGED
@@ -184,7 +184,7 @@ module.exports = [
184
184
  tz.cover_position_tilt,
185
185
  coverAndLightToZigbee,
186
186
  ],
187
- meta: {multiEndpoint: true, coverInverted: true},
187
+ meta: {multiEndpoint: true},
188
188
  endpoint: (device) => {
189
189
  return {
190
190
  'l1': zigfredEndpoint,
package/devices/tuya.js CHANGED
@@ -23,6 +23,18 @@ const TS011Fplugs = ['_TZ3000_5f43h46b', '_TZ3000_cphmq0q7', '_TZ3000_dpo1ysak',
23
23
  '_TZ3000_ss98ec5d', '_TZ3000_gznh2xla', '_TZ3000_hdopuwv6', '_TZ3000_gvn91tmx', '_TZ3000_dksbtrzs', '_TZ3000_b28wrpvx'];
24
24
 
25
25
  const tzLocal = {
26
+ SA12IZL_silence_siren: {
27
+ key: ['silence_siren'],
28
+ convertSet: async (entity, key, value, meta) => {
29
+ await tuya.sendDataPointBool(entity, 16, value);
30
+ },
31
+ },
32
+ SA12IZL_alarm: {
33
+ key: ['alarm'],
34
+ convertSet: async (entity, key, value, meta) => {
35
+ await tuya.sendDataPointEnum(entity, 20, {true: 0, false: 1}[value]);
36
+ },
37
+ },
26
38
  hpsz: {
27
39
  key: ['led_state'],
28
40
  convertSet: async (entity, key, value, meta) => {
@@ -277,6 +289,37 @@ const tzLocal = {
277
289
  };
278
290
 
279
291
  const fzLocal = {
292
+ SA12IZL: {
293
+ cluster: 'manuSpecificTuya',
294
+ type: ['commandDataResponse', 'commandDataReport'],
295
+ convert: (model, msg, publish, options, meta) => {
296
+ const result = {};
297
+ for (const dpValue of msg.data.dpValues) {
298
+ const dp = dpValue.dp;
299
+ const value = tuya.getDataValue(dpValue);
300
+ switch (dp) {
301
+ case tuya.dataPoints.state:
302
+ result.smoke = value === 0;
303
+ break;
304
+ case 15:
305
+ result.battery = value;
306
+ break;
307
+ case 16:
308
+ result.silence_siren = value;
309
+ break;
310
+ case 20: {
311
+ const alarm = {0: true, 1: false};
312
+ result.alarm = alarm[value];
313
+ break;
314
+ }
315
+ default:
316
+ meta.logger.warn(`zigbee-herdsman-converters:SA12IZL: NOT RECOGNIZED DP #${
317
+ dp} with data ${JSON.stringify(dpValue)}`);
318
+ }
319
+ }
320
+ return result;
321
+ },
322
+ },
280
323
  tuya_dinrail_switch2: {
281
324
  cluster: 'manuSpecificTuya',
282
325
  type: ['commandDataReport', 'commandDataResponse', 'commandActiveStatusReport'],
@@ -1558,6 +1601,27 @@ module.exports = [
1558
1601
  },
1559
1602
  exposes: [e.battery(), e.water_leak()],
1560
1603
  },
1604
+ {
1605
+ fingerprint: [{modelID: 'TS0001', manufacturerName: '_TZ3000_xkap8wtb'}],
1606
+ model: 'TS0001_power',
1607
+ description: 'Switch with power monitoring',
1608
+ vendor: 'TuYa',
1609
+ fromZigbee: [fz.on_off, fz.electrical_measurement, fz.metering, fz.ignore_basic_report],
1610
+ toZigbee: [tz.on_off],
1611
+ configure: async (device, coordinatorEndpoint, logger) => {
1612
+ const endpoint = device.getEndpoint(1);
1613
+ await endpoint.read('genBasic', ['manufacturerName', 'zclVersion', 'appVersion', 'modelId', 'powerSource', 0xfffe]);
1614
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff', 'haElectricalMeasurement', 'seMetering']);
1615
+ await reporting.rmsVoltage(endpoint, {change: 5});
1616
+ await reporting.rmsCurrent(endpoint, {change: 50});
1617
+ await reporting.activePower(endpoint, {change: 10});
1618
+ await reporting.currentSummDelivered(endpoint);
1619
+ endpoint.saveClusterAttributeKeyValue('haElectricalMeasurement', {acCurrentDivisor: 1000, acCurrentMultiplier: 1});
1620
+ endpoint.saveClusterAttributeKeyValue('seMetering', {divisor: 100, multiplier: 1});
1621
+ device.save();
1622
+ },
1623
+ exposes: [e.switch(), e.power(), e.current(), e.voltage().withAccess(ea.STATE)],
1624
+ },
1561
1625
  {
1562
1626
  zigbeeModel: ['TS0001'],
1563
1627
  model: 'TS0001',
@@ -2117,6 +2181,21 @@ module.exports = [
2117
2181
  toZigbee: [],
2118
2182
  exposes: [e.smoke(), e.battery()],
2119
2183
  },
2184
+ {
2185
+ fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_5d3vhjro'}],
2186
+ model: 'SA12IZL',
2187
+ vendor: 'TuYa',
2188
+ description: 'Smart smoke alarm',
2189
+ meta: {timeout: 30000, disableDefaultResponse: true},
2190
+ fromZigbee: [fzLocal.SA12IZL],
2191
+ toZigbee: [tzLocal.SA12IZL_silence_siren, tzLocal.SA12IZL_alarm],
2192
+ exposes: [e.battery(),
2193
+ exposes.binary('smoke', ea.STATE, true, false).withDescription('Smoke alarm status'),
2194
+ exposes.enum('battery_level', ea.STATE, ['low', 'middle', 'high']).withDescription('Battery level state'),
2195
+ exposes.binary('alarm', ea.STATE_SET, true, false).withDescription('Enable the alarm'),
2196
+ exposes.binary('silence_siren', ea.STATE_SET, true, false).withDescription('Silence the siren')],
2197
+ onEvent: tuya.onEventsetTime,
2198
+ },
2120
2199
  {
2121
2200
  fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_byzdayie'},
2122
2201
  {modelID: 'TS0601', manufacturerName: '_TZE200_fsb6zw01'},
@@ -201,6 +201,15 @@ module.exports = [
201
201
  toZigbee: [tz.tuya_cover_control, tz.tuya_cover_options, tz.tuya_data_point_test],
202
202
  exposes: [e.cover_position().setAccess('position', ea.STATE_SET)],
203
203
  },
204
+ {
205
+ fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_7eue9vhc'}],
206
+ model: 'ZM25RX-08/30',
207
+ vendor: 'Zemismart',
208
+ description: 'Tubular motor',
209
+ fromZigbee: [fz.tuya_cover, fz.ignore_basic_report],
210
+ toZigbee: [tz.tuya_cover_control, tz.tuya_cover_options, tz.tuya_data_point_test],
211
+ exposes: [e.cover_position().setAccess('position', ea.STATE_SET)],
212
+ },
204
213
  {
205
214
  fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_1n2kyphz'}],
206
215
  model: 'TB26-4',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zigbee-herdsman-converters",
3
- "version": "14.0.617",
3
+ "version": "14.0.618",
4
4
  "description": "Collection of device converters to be used with zigbee-herdsman",
5
5
  "main": "index.js",
6
6
  "files": [