zigbee-herdsman-converters 14.0.416 → 14.0.420

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.
@@ -299,6 +299,10 @@ const converters = {
299
299
  convertSet: async (entity, key, value, meta) => {
300
300
  if (typeof value !== 'number') {
301
301
  value = value.toLowerCase();
302
+ if (value === 'stop') {
303
+ await entity.command('genLevelCtrl', 'stop', {}, utils.getOptions(meta.mapped, entity));
304
+ return;
305
+ }
302
306
  const lookup = {'open': 100, 'close': 0};
303
307
  utils.validateValue(value, Object.keys(lookup));
304
308
  value = lookup[value];
package/devices/adeo.js CHANGED
@@ -26,7 +26,7 @@ module.exports = [
26
26
  },
27
27
  },
28
28
  {
29
- zigbeeModel: ['LXEK-5'],
29
+ zigbeeModel: ['LXEK-5', 'ZBEK-26'],
30
30
  model: 'HR-C99C-Z-C045',
31
31
  vendor: 'ADEO',
32
32
  description: 'RGB CTT LEXMAN ENKI remote control',
package/devices/ecodim.js CHANGED
@@ -40,7 +40,7 @@ module.exports = [
40
40
  ]},
41
41
  ],
42
42
  zigbeeModel: ['Dimmer-Switch-ZB3.0'],
43
- model: 'Eco-Dim.07',
43
+ model: 'Eco-Dim.07/Eco-Dim.10',
44
44
  vendor: 'EcoDim',
45
45
  description: 'Zigbee & Z-wave dimmer',
46
46
  extend: extend.light_onoff_brightness({noConfigure: true, disableEffect: true}),
@@ -83,4 +83,22 @@ module.exports = [
83
83
  },
84
84
  exposes: [e.lock(), e.battery()],
85
85
  },
86
+ {
87
+ zigbeeModel: ['SMARTCODE_LEVER_5'],
88
+ model: '99120-021',
89
+ vendor: 'Kwikset',
90
+ description: '912 SmartCode traditional electronic lever',
91
+ fromZigbee: [fz.lock, fz.lock_operation_event, fz.battery, fz.lock_programming_event, fz.lock_pin_code_response],
92
+ toZigbee: [tz.lock, tz.pincode_lock],
93
+ meta: {pinCodeCount: 30},
94
+ configure: async (device, coordinatorEndpoint, logger) => {
95
+ const endpoint = device.getEndpoint(2);
96
+ console.log(device);
97
+ console.log(endpoint.clusters);
98
+ await reporting.bind(endpoint, coordinatorEndpoint, ['closuresDoorLock', 'genPowerCfg']);
99
+ await reporting.lockState(endpoint);
100
+ await reporting.batteryPercentageRemaining(endpoint);
101
+ },
102
+ exposes: [e.lock(), e.battery(), e.pincode()],
103
+ },
86
104
  ];
@@ -90,7 +90,7 @@ module.exports = [
90
90
  },
91
91
  {
92
92
  zigbeeModel: ['500.45'],
93
- model: '798.15',
93
+ model: '500.45',
94
94
  vendor: 'Paulmann',
95
95
  description: 'SmartHome Zigbee Pendulum Light Aptare',
96
96
  extend: extend.light_onoff_brightness(),
@@ -661,7 +661,7 @@ module.exports = [
661
661
  ota: ota.zigbeeOTA,
662
662
  },
663
663
  {
664
- zigbeeModel: ['LWW003'],
664
+ zigbeeModel: ['LWW003', 'LWF003'],
665
665
  model: '9290018216',
666
666
  vendor: 'Philips',
667
667
  description: 'Hue white A60 bulb E27 bluetooth',
@@ -2706,6 +2706,14 @@ module.exports = [
2706
2706
  extend: hueExtend.light_onoff_brightness(),
2707
2707
  ota: ota.zigbeeOTA,
2708
2708
  },
2709
+ {
2710
+ zigbeeModel: ['915005997301'],
2711
+ model: '915005997301',
2712
+ vendor: 'Philips',
2713
+ description: 'Hue Bluetooth white & color ambiance ceiling lamp Infuse medium',
2714
+ extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
2715
+ ota: ota.zigbeeOTA,
2716
+ },
2709
2717
  {
2710
2718
  zigbeeModel: ['915005997501'],
2711
2719
  model: '915005997501',
@@ -0,0 +1,34 @@
1
+ const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
2
+ const tz = require('zigbee-herdsman-converters/converters/toZigbee');
3
+ const exposes = require('zigbee-herdsman-converters/lib/exposes');
4
+ const reporting = require('zigbee-herdsman-converters/lib/reporting');
5
+ const e = exposes.presets;
6
+ const ea = exposes.access;
7
+
8
+ module.exports = [
9
+ {
10
+ fingerprint: [{manufId: 4368, endpoints: [{ID: 1, profileID: 260, deviceID: 513, inputClusters: [0, 3, 21],
11
+ outputClusters: [3, 4, 5, 6, 8, 256, 64544, 64545]}]}],
12
+ model: 'NB102',
13
+ vendor: 'Profalux',
14
+ description: 'Cover remote',
15
+ fromZigbee: [],
16
+ toZigbee: [],
17
+ exposes: [],
18
+ },
19
+ {
20
+ fingerprint: [{manufId: 4368, endpoints: [{ID: 1, profileID: 260, deviceID: 512,
21
+ inputClusters: [0, 3, 4, 5, 6, 8, 10, 21, 256, 64544, 64545], outputClusters: [3, 64544]}]}],
22
+ model: 'NSAV061',
23
+ vendor: 'Profalux',
24
+ description: 'Cover',
25
+ fromZigbee: [fz.cover_position_via_brightness, fz.cover_state_via_onoff],
26
+ toZigbee: [tz.cover_via_brightness],
27
+ exposes: [e.cover_position().setAccess('state', ea.ALL)],
28
+ configure: async (device, coordinatorEndpoint, logger) => {
29
+ const endpoint = device.getEndpoint(1);
30
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genLevelCtrl']);
31
+ await reporting.brightness(endpoint);
32
+ },
33
+ },
34
+ ];
@@ -379,6 +379,7 @@ module.exports = [
379
379
  endpoint: (device) => {
380
380
  return {'top': 21, 'bottom': 22};
381
381
  },
382
+ whiteLabel: [{vendor: 'Elko', model: 'EKO07117'}],
382
383
  meta: {multiEndpoint: true},
383
384
  exposes: [e.action(['on_top', 'off_top', 'on_bottom', 'off_bottom', 'brightness_move_up_top', 'brightness_stop_top',
384
385
  'brightness_move_down_top', 'brightness_stop_top', 'brightness_move_up_bottom', 'brightness_stop_bottom',
package/devices/tplink.js CHANGED
@@ -1,6 +1,6 @@
1
- const exposes = require('zigbee-herdsman-converters/lib/exposes');
2
- const fz = {...require('zigbee-herdsman-converters/converters/fromZigbee'), legacy: require('../lib/legacy').fromZigbee};
3
- const reporting = require('zigbee-herdsman-converters/lib/reporting');
1
+ const exposes = require('../lib/exposes');
2
+ const fz = {...require('../converters/fromZigbee'), legacy: require('../lib/legacy').fromZigbee};
3
+ const reporting = require('../lib/reporting');
4
4
  const e = exposes.presets;
5
5
 
6
6
  module.exports = [
package/devices/tuya.js CHANGED
@@ -1158,6 +1158,7 @@ module.exports = [
1158
1158
  vendor: 'TuYa',
1159
1159
  whiteLabel: [{vendor: 'LELLKI', model: 'TS011F_plug'}, {vendor: 'NEO', model: 'NAS-WR01B'},
1160
1160
  {vendor: 'BlitzWolf', model: 'BW-SHP15'}],
1161
+ ota: ota.zigbeeOTA,
1161
1162
  fromZigbee: [fz.on_off, fz.electrical_measurement, fz.metering, fz.ignore_basic_report, fz.tuya_switch_power_outage_memory,
1162
1163
  fz.ts011f_plug_indicator_mode, fz.ts011f_plug_child_mode],
1163
1164
  toZigbee: [tz.on_off, tz.tuya_switch_power_outage_memory, tz.ts011f_plug_indicator_mode, tz.ts011f_plug_child_mode],
@@ -1207,6 +1208,7 @@ module.exports = [
1207
1208
  description: 'Smart plug (with power monitoring by polling)',
1208
1209
  vendor: 'TuYa',
1209
1210
  whiteLabel: [{vendor: 'VIKEFON', model: 'TS011F'}, {vendor: 'BlitzWolf', model: 'BW-SHP15'}],
1211
+ ota: ota.zigbeeOTA,
1210
1212
  fromZigbee: [fz.on_off, fz.electrical_measurement, fz.metering, fz.ignore_basic_report, fz.tuya_switch_power_outage_memory,
1211
1213
  fz.ts011f_plug_indicator_mode, fz.ts011f_plug_child_mode],
1212
1214
  toZigbee: [tz.on_off, tz.tuya_switch_power_outage_memory, tz.ts011f_plug_indicator_mode, tz.ts011f_plug_child_mode],
@@ -1306,7 +1308,7 @@ module.exports = [
1306
1308
  description: 'PIR sensor',
1307
1309
  fromZigbee: [fz.battery, fz.ignore_basic_report, fz.ias_occupancy_alarm_1],
1308
1310
  toZigbee: [],
1309
- whiteLabel: [{vendor: 'Samotech', model: 'SM301Z'}],
1311
+ whiteLabel: [{vendor: 'Samotech', model: 'SM301Z'}, {vendor: 'Nedis', model: 'ZBSM10WT'}],
1310
1312
  exposes: [e.battery(), e.occupancy(), e.battery_low(), e.tamper()],
1311
1313
  },
1312
1314
  {
package/devices/woox.js CHANGED
@@ -1,5 +1,5 @@
1
1
  const exposes = require('../lib/exposes');
2
- const reporting = require('zigbee-herdsman-converters/lib/reporting');
2
+ const reporting = require('../lib/reporting');
3
3
  const fz = {...require('../converters/fromZigbee'), legacy: require('../lib/legacy').fromZigbee};
4
4
  const tz = require('../converters/toZigbee');
5
5
  const tuya = require('../lib/tuya');
package/devices/xiaomi.js CHANGED
@@ -54,9 +54,15 @@ module.exports = [
54
54
  model: 'MCCGQ13LM',
55
55
  vendor: 'Xiaomi',
56
56
  description: 'Aqara P1 door & window contact sensor',
57
- fromZigbee: [fz.ias_contact_alarm_1, fz.aqara_opple],
57
+ fromZigbee: [fz. xiaomi_contact, fz.ias_contact_alarm_1, fz.aqara_opple, fz.battery],
58
58
  toZigbee: [],
59
+ meta: {battery: {voltageToPercentage: '3V_2850_3200'}},
59
60
  exposes: [e.contact(), e.battery(), e.battery_voltage()],
61
+ configure: async (device, coordinatorEndpoint, logger) => {
62
+ const endpoint = device.getEndpoint(1);
63
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg']);
64
+ await reporting.batteryVoltage(endpoint);
65
+ },
60
66
  },
61
67
  {
62
68
  zigbeeModel: ['lumi.dimmer.rcbac1'],
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zigbee-herdsman-converters",
3
- "version": "14.0.416",
3
+ "version": "14.0.420",
4
4
  "lockfileVersion": 1,
5
5
  "requires": true,
6
6
  "dependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zigbee-herdsman-converters",
3
- "version": "14.0.416",
3
+ "version": "14.0.420",
4
4
  "description": "Collection of device converters to be used with zigbee-herdsman",
5
5
  "main": "index.js",
6
6
  "files": [