zigbee-herdsman-converters 15.0.80 → 15.0.81

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/bitron.js CHANGED
@@ -5,6 +5,55 @@ const reporting = require('../lib/reporting');
5
5
  const extend = require('../lib/extend');
6
6
  const e = exposes.presets;
7
7
  const ea = exposes.access;
8
+ const herdsman = require('zigbee-herdsman');
9
+
10
+ const manufacturerOptions = {manufacturerCode: herdsman.Zcl.ManufacturerCode._4_NOKS};
11
+
12
+ const bitron = {
13
+ fz: {
14
+ thermostat_hysteresis: {
15
+ cluster: 'hvacThermostat',
16
+ type: ['attributeReport', 'readResponse'],
17
+ convert: (model, msg, publish, options, meta) => {
18
+ const result = {};
19
+
20
+ if (msg.data.hasOwnProperty('fourNoksHysteresisHigh')) {
21
+ if (!result.hasOwnProperty('hysteresis')) result.hysteresis = {};
22
+ result.hysteresis.high = msg.data.fourNoksHysteresisHigh;
23
+ }
24
+
25
+ if (msg.data.hasOwnProperty('fourNoksHysteresisLow')) {
26
+ if (!result.hasOwnProperty('hysteresis')) result.hysteresis = {};
27
+ result.hysteresis.low = msg.data.fourNoksHysteresisLow;
28
+ }
29
+
30
+ return result;
31
+ },
32
+ },
33
+ },
34
+ tz: {
35
+ thermostat_hysteresis: {
36
+ key: ['hysteresis', 'hysteresis'],
37
+ convertSet: async (entity, key, value, meta) => {
38
+ const result = {state: {hysteresis: {}}};
39
+ if (value.hasOwnProperty('high')) {
40
+ await entity.write('hvacThermostat', {'fourNoksHysteresisHigh': value.high}, manufacturerOptions);
41
+ result.state.hysteresis.high = value.high;
42
+ }
43
+
44
+ if (value.hasOwnProperty('low')) {
45
+ await entity.write('hvacThermostat', {'fourNoksHysteresisLow': value.low}, manufacturerOptions);
46
+ result.state.hysteresis.low = value.low;
47
+ }
48
+
49
+ return result;
50
+ },
51
+ convertGet: async (entity, key, meta) => {
52
+ await entity.read('hvacThermostat', ['fourNoksHysteresisHigh', 'fourNoksHysteresisLow'], manufacturerOptions);
53
+ },
54
+ },
55
+ },
56
+ };
8
57
 
9
58
  module.exports = [
10
59
  {
@@ -190,12 +239,12 @@ module.exports = [
190
239
  model: 'AV2010/32',
191
240
  vendor: 'SMaBiT (Bitron Video)',
192
241
  description: 'Wireless wall thermostat with relay',
193
- fromZigbee: [fz.legacy.thermostat_att_report, fz.battery, fz.hvac_user_interface],
242
+ fromZigbee: [fz.legacy.thermostat_att_report, fz.battery, fz.hvac_user_interface, bitron.fz.thermostat_hysteresis],
194
243
  toZigbee: [
195
244
  tz.thermostat_control_sequence_of_operation, tz.thermostat_occupied_heating_setpoint,
196
245
  tz.thermostat_occupied_cooling_setpoint, tz.thermostat_local_temperature_calibration,
197
246
  tz.thermostat_local_temperature, tz.thermostat_running_state, tz.thermostat_temperature_display_mode,
198
- tz.thermostat_keypad_lockout, tz.thermostat_system_mode, tz.battery_voltage,
247
+ tz.thermostat_keypad_lockout, tz.thermostat_system_mode, tz.battery_voltage, bitron.tz.thermostat_hysteresis,
199
248
  ],
200
249
  exposes: (device, options) => {
201
250
  const dynExposes = [];
@@ -214,6 +263,11 @@ module.exports = [
214
263
  modes.push('cool');
215
264
  }
216
265
 
266
+ const hysteresisExposes = exposes.composite('hysteresis', 'hysteresis', ea.ALL)
267
+ .withFeature(exposes.numeric('low', ea.SET))
268
+ .withFeature(exposes.numeric('high', ea.SET))
269
+ .withDescription('Set thermostat hysteresis low and high trigger values. (1 = 0.01ºC)');
270
+
217
271
  dynExposes.push(exposes.climate()
218
272
  .withSetpoint('occupied_heating_setpoint', 7, 30, 0.5)
219
273
  .withLocalTemperature()
@@ -222,9 +276,11 @@ module.exports = [
222
276
  .withLocalTemperatureCalibration()
223
277
  .withControlSequenceOfOperation(['heating_only', 'cooling_only'], ea.ALL));
224
278
  dynExposes.push(e.keypad_lockout());
279
+ dynExposes.push(hysteresisExposes);
225
280
  dynExposes.push(e.battery().withAccess(ea.STATE_GET));
226
281
  dynExposes.push(e.battery_low());
227
282
  dynExposes.push(e.linkquality());
283
+
228
284
  return dynExposes;
229
285
  },
230
286
  meta: {battery: {voltageToPercentage: '3V_2500'}},
@@ -241,6 +297,7 @@ module.exports = [
241
297
  await reporting.batteryAlarmState(endpoint);
242
298
  await reporting.batteryVoltage(endpoint);
243
299
  await endpoint.read('hvacThermostat', ['ctrlSeqeOfOper', 'localTemperatureCalibration']);
300
+ await endpoint.read('hvacThermostat', ['fourNoksHysteresisHigh', 'fourNoksHysteresisLow'], manufacturerOptions);
244
301
  },
245
302
  },
246
303
  {
@@ -10,7 +10,7 @@ module.exports = [
10
10
  model: 'EB-E14-P45-RGBW',
11
11
  vendor: 'EssentielB',
12
12
  description: 'Smart LED bulb',
13
- extend: extend.light_onoff_brightness_colortemp({colorTempRange: [153, 370]}),
13
+ extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 370]}),
14
14
  },
15
15
  {
16
16
  zigbeeModel: ['EB-E14-FLA-CCT'],
@@ -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-C-103P'],
456
+ model: 'GL-C-103P',
457
+ vendor: 'Gledopto',
458
+ description: 'Zigbee LED controller (pro)',
459
+ extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [158, 495]}),
460
+ },
454
461
  {
455
462
  zigbeeModel: ['GL-G-004P'],
456
463
  model: 'GL-G-004P',
@@ -198,7 +198,7 @@ module.exports = [
198
198
  zigbeeModel: ['CLA60 RGBW JP'],
199
199
  model: 'SMARTZBA60RGBW',
200
200
  vendor: 'LEDVANCE',
201
- description: 'SMART+ lamp E26 RGBW',
201
+ description: 'SMART+ lamp B22D RGBTW',
202
202
  extend: extend.ledvance.light_onoff_brightness_colortemp_color({colorTempRange: [153, 526]}),
203
203
  ota: ota.ledvance,
204
204
  },
@@ -887,9 +887,9 @@ module.exports = [
887
887
  },
888
888
  {
889
889
  zigbeeModel: ['LCA006'],
890
- model: '9290024689',
890
+ model: '9290024688',
891
891
  vendor: 'Philips',
892
- description: 'Hue white and color ambiance B22 1100lm',
892
+ description: 'Hue white and color ambiance E27 1100lm',
893
893
  extend: philips.extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
894
894
  },
895
895
  {
package/devices/tuya.js CHANGED
@@ -1491,8 +1491,7 @@ module.exports = [
1491
1491
  },
1492
1492
  },
1493
1493
  {
1494
- fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_aqnazj70'}, {modelID: 'TS0601', manufacturerName: '_TZE200_k6jhsr0q'},
1495
- {modelID: 'TS0601', manufacturerName: '_TZE200_di3tfv5b'}],
1494
+ fingerprint: tuya.fingerprint('TS0601', ['_TZE200_aqnazj70', '_TZE200_k6jhsr0q', '_TZE200_di3tfv5b', '_TZE200_mexisfik']),
1496
1495
  model: 'TS0601_switch_4_gang',
1497
1496
  vendor: 'TuYa',
1498
1497
  description: '4 gang switch',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zigbee-herdsman-converters",
3
- "version": "15.0.80",
3
+ "version": "15.0.81",
4
4
  "description": "Collection of device converters to be used with zigbee-herdsman",
5
5
  "main": "index.js",
6
6
  "files": [