zigbee-herdsman-converters 14.0.420 → 14.0.421

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.
@@ -0,0 +1,11 @@
1
+ const extend = require('../lib/extend');
2
+
3
+ module.exports = [
4
+ {
5
+ zigbeeModel: ['AL8TC13W-AP'],
6
+ model: 'AL8TC13W-AP',
7
+ vendor: 'Alchemy',
8
+ description: 'Downlight with tuneable white',
9
+ extend: extend.light_onoff_brightness_colortemp({colorTempRange: [153, 370]}),
10
+ },
11
+ ];
package/devices/awox.js CHANGED
@@ -1,4 +1,64 @@
1
1
  const extend = require('../lib/extend');
2
+ const fz = require('../converters/fromZigbee');
3
+ const exposes = require('../lib/exposes');
4
+ const e = exposes.presets;
5
+
6
+ const awoxRemoteHelper = {
7
+ convertToColorName: (buffer) => {
8
+ const commonForColors = buffer[0] === 17 && buffer[2] === 48 && buffer[3] === 0 && buffer[5] === 8 && buffer[6] === 0;
9
+
10
+ if (commonForColors && buffer[4] === 255) {
11
+ return 'red';
12
+ } else if (commonForColors && buffer[4] === 42) {
13
+ return 'yellow';
14
+ } else if (commonForColors && buffer[4] === 85) {
15
+ return 'green';
16
+ } else if (commonForColors && buffer[4] === 170) {
17
+ return 'blue';
18
+ }
19
+ return null;
20
+ },
21
+ isRefresh: (buffer) => {
22
+ return buffer[0] === 17 && buffer[2] === 16 && buffer[3] === 1 && buffer[4] === 1;
23
+ },
24
+ };
25
+
26
+ const fzLocal = {
27
+ colors: {
28
+ cluster: 'lightingColorCtrl',
29
+ type: ['raw'],
30
+ convert: (model, msg, publish, options, meta) => {
31
+ const color = awoxRemoteHelper.convertToColorName(msg.data);
32
+ if (color != null) {
33
+ return {
34
+ action: color,
35
+ };
36
+ }
37
+ },
38
+ },
39
+ refreshColored: {
40
+ cluster: 'lightingColorCtrl',
41
+ type: ['commandMoveHue'],
42
+ convert: (model, msg, publish, options, meta) => {
43
+ if (msg.data.movemode === 1 && msg.data.rate === 12) {
44
+ return {
45
+ action: 'refresh_colored',
46
+ };
47
+ }
48
+ },
49
+ },
50
+ refresh: {
51
+ cluster: 'genLevelCtrl',
52
+ type: ['raw'],
53
+ convert: (model, msg, publish, options, meta) => {
54
+ if (awoxRemoteHelper.isRefresh(msg.data)) {
55
+ return {
56
+ action: 'refresh',
57
+ };
58
+ }
59
+ },
60
+ },
61
+ };
2
62
 
3
63
  module.exports = [
4
64
  {
@@ -8,6 +68,23 @@ module.exports = [
8
68
  description: 'LED white',
9
69
  extend: extend.light_onoff_brightness(),
10
70
  },
71
+ {
72
+ fingerprint: [
73
+ {type: 'Router', manufacturerName: 'AwoX', modelID: 'TLSR82xx', endpoints: [
74
+ {ID: 1, profileID: 260, deviceID: 2028, inputClusters: [0, 3, 4, 4096], outputClusters: [0, 3, 4, 5, 6, 8, 768, 4096]},
75
+ {ID: 3, profileID: 4751, deviceID: 2048, inputClusters: [65360, 65361], outputClusters: [65360, 65361]},
76
+ ]},
77
+ ],
78
+ model: '33952',
79
+ vendor: 'AwoX',
80
+ description: 'Remote controller',
81
+ fromZigbee: [fz.command_on, fzLocal.colors, fzLocal.refresh, fzLocal.refreshColored, fz.command_off,
82
+ fz.command_step, fz.command_move, fz.command_stop, fz.command_recall, fz.command_step_color_temperature],
83
+ toZigbee: [],
84
+ exposes: [e.action(['on', 'off', 'red', 'refresh', 'refresh_colored', 'blue', 'yellow',
85
+ 'green', 'brightness_step_up', 'brightness_step_down', 'brightness_move_up', 'brightness_move_down', 'brightness_stop',
86
+ 'recall_1', 'color_temperature_step_up', 'color_temperature_step_down'])],
87
+ },
11
88
  {
12
89
  fingerprint: [
13
90
  {type: 'Router', manufacturerName: 'AwoX', modelID: 'TLSR82xx', endpoints: [
package/devices/nous.js CHANGED
@@ -16,6 +16,31 @@ module.exports = [
16
16
  toZigbee: [],
17
17
  exposes: [e.temperature(), e.humidity(), e.battery()],
18
18
  },
19
+ {
20
+ fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_lve3dvpy'}],
21
+ model: 'SZ-T04',
22
+ vendor: 'Nous',
23
+ description: 'Temperature and humidity sensor with clock',
24
+ fromZigbee: [fz.nous_lcd_temperature_humidity_sensor, fz.ignore_tuya_set_time],
25
+ toZigbee: [tz.nous_lcd_temperature_humidity_sensor],
26
+ onEvent: tuya.onEventSetLocalTime,
27
+ configure: async (device, coordinatorEndpoint, logger) => {
28
+ const endpoint = device.getEndpoint(1);
29
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic']);
30
+ },
31
+ exposes: [
32
+ e.temperature(), e.humidity(), e.battery(),
33
+ exposes.enum('temperature_unit_convert', ea.STATE_SET, ['celsius', 'fahrenheit']).withDescription('Current display unit'),
34
+ exposes.enum('temperature_alarm', ea.STATE, ['canceled', 'lower_alarm', 'upper_alarm'])
35
+ .withDescription('Temperature alarm status'),
36
+ exposes.numeric('max_temperature', ea.STATE_SET).withUnit('°C').withValueMin(-20).withValueMax(60)
37
+ .withDescription('Alarm temperature max'),
38
+ exposes.numeric('min_temperature', ea.STATE_SET).withUnit('°C').withValueMin(-20).withValueMax(60)
39
+ .withDescription('Alarm temperature min'),
40
+ exposes.numeric('temperature_sensitivity', ea.STATE_SET).withUnit('°C').withValueMin(0.1).withValueMax(50).withValueStep(0.1)
41
+ .withDescription('Temperature sensitivity'),
42
+ ],
43
+ },
19
44
  {
20
45
  fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_nnrfa68v'}],
21
46
  model: 'E6',
package/devices/tuya.js CHANGED
@@ -331,6 +331,7 @@ module.exports = [
331
331
  {modelID: 'TS0601', manufacturerName: '_TZE200_dfxkcots'},
332
332
  {modelID: 'TS0601', manufacturerName: '_TZE200_ojzhk75b'},
333
333
  {modelID: 'TS0601', manufacturerName: '_TZE200_swaamsoy'},
334
+ {modelID: 'TS0601', manufacturerName: '_TZE200_3p5ydos3'},
334
335
  ],
335
336
  model: 'TS0601_dimmer',
336
337
  vendor: 'TuYa',
package/devices/xiaomi.js CHANGED
@@ -1478,7 +1478,8 @@ module.exports = [
1478
1478
  // Ignore energy metering reports, rely on aqara_opple: https://github.com/Koenkk/zigbee2mqtt/issues/10709
1479
1479
  fromZigbee: [fz.on_off, fz.device_temperature, fz.aqara_opple, fz.ignore_metering, fz.ignore_electrical_measurement,
1480
1480
  fz.xiaomi_power],
1481
- exposes: [e.switch(), e.energy(), e.power(), e.device_temperature(), e.power_outage_memory(), e.switch_type()],
1481
+ exposes: [e.switch(), e.energy(), e.power(), e.device_temperature(), e.power_outage_memory(), e.switch_type(),
1482
+ e.voltage(), e.temperature(), e.current()],
1482
1483
  toZigbee: [tz.xiaomi_switch_type, tz.on_off, tz.xiaomi_switch_power_outage_memory, tz.xiaomi_led_disabled_night],
1483
1484
  configure: async (device, coordinatorEndpoint, logger) => {
1484
1485
  const endpoint = device.getEndpoint(1);