zigbee-herdsman-converters 14.0.472 → 14.0.473
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/converters/fromZigbee.js +15 -0
- package/devices/philips.js +18 -0
- package/devices/plaid.js +5 -3
- package/devices/tuya.js +17 -1
- package/devices/ynoa.js +24 -0
- package/package.json +1 -1
package/converters/fromZigbee.js
CHANGED
|
@@ -3129,6 +3129,21 @@ const converters = {
|
|
|
3129
3129
|
};
|
|
3130
3130
|
},
|
|
3131
3131
|
},
|
|
3132
|
+
plaid_battery: {
|
|
3133
|
+
cluster: 'genPowerCfg',
|
|
3134
|
+
type: ['readResponse', 'attributeReport'],
|
|
3135
|
+
convert: (model, msg, publish, options, meta) => {
|
|
3136
|
+
const payload = {};
|
|
3137
|
+
if (msg.data.hasOwnProperty('mainsVoltage')) {
|
|
3138
|
+
payload.voltage = msg.data['mainsVoltage'];
|
|
3139
|
+
|
|
3140
|
+
if (model.meta && model.meta.battery && model.meta.battery.voltageToPercentage) {
|
|
3141
|
+
payload.battery = batteryVoltageToPercentage(payload.voltage, model.meta.battery.voltageToPercentage);
|
|
3142
|
+
}
|
|
3143
|
+
}
|
|
3144
|
+
return payload;
|
|
3145
|
+
},
|
|
3146
|
+
},
|
|
3132
3147
|
silvercrest_smart_led_string: {
|
|
3133
3148
|
cluster: 'manuSpecificTuya',
|
|
3134
3149
|
type: ['commandDataResponse', 'commandDataReport'],
|
package/devices/philips.js
CHANGED
|
@@ -117,6 +117,24 @@ module.exports = [
|
|
|
117
117
|
extend: hueExtend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
|
|
118
118
|
ota: ota.zigbeeOTA,
|
|
119
119
|
},
|
|
120
|
+
{
|
|
121
|
+
zigbeeModel: ['915005997601'],
|
|
122
|
+
model: '915005997601',
|
|
123
|
+
vendor: 'Philips',
|
|
124
|
+
description: 'Hue Devere M white ambiance white & dimmer',
|
|
125
|
+
meta: {turnsOffAtBrightness1: true},
|
|
126
|
+
extend: hueExtend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
|
|
127
|
+
ota: ota.zigbeeOTA,
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
zigbeeModel: ['915005997701'],
|
|
131
|
+
model: '915005997701',
|
|
132
|
+
vendor: 'Philips',
|
|
133
|
+
description: 'Hue Devere L white ambiance white & dimmer',
|
|
134
|
+
meta: {turnsOffAtBrightness1: true},
|
|
135
|
+
extend: hueExtend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
|
|
136
|
+
ota: ota.zigbeeOTA,
|
|
137
|
+
},
|
|
120
138
|
{
|
|
121
139
|
zigbeeModel: ['929003054001'],
|
|
122
140
|
model: '929003054001',
|
package/devices/plaid.js
CHANGED
|
@@ -11,13 +11,15 @@ module.exports = [
|
|
|
11
11
|
vendor: 'PLAID SYSTEMS',
|
|
12
12
|
description: 'Spruce temperature and moisture sensor',
|
|
13
13
|
toZigbee: [],
|
|
14
|
-
fromZigbee: [fz.temperature, fz.humidity],
|
|
15
|
-
exposes: [e.humidity(), e.temperature()],
|
|
14
|
+
fromZigbee: [fz.temperature, fz.humidity, fz.plaid_battery],
|
|
15
|
+
exposes: [e.humidity(), e.temperature(), e.battery(), e.battery_voltage()],
|
|
16
|
+
meta: {battery: {voltageToPercentage: '3V_2500'}},
|
|
16
17
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
17
18
|
const endpoint = device.getEndpoint(1);
|
|
18
|
-
await reporting.bind(endpoint, coordinatorEndpoint, ['msTemperatureMeasurement', 'msRelativeHumidity']);
|
|
19
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['msTemperatureMeasurement', 'msRelativeHumidity', 'genPowerCfg']);
|
|
19
20
|
await reporting.temperature(endpoint);
|
|
20
21
|
await reporting.humidity(endpoint);
|
|
22
|
+
device.powerSource = 'Battery';
|
|
21
23
|
},
|
|
22
24
|
},
|
|
23
25
|
];
|
package/devices/tuya.js
CHANGED
|
@@ -45,7 +45,7 @@ const tzLocal = {
|
|
|
45
45
|
|
|
46
46
|
const fzLocal = {
|
|
47
47
|
scenes_recall_scene_65029: {
|
|
48
|
-
cluster: 65029,
|
|
48
|
+
cluster: '65029',
|
|
49
49
|
type: ['raw', 'attributeReport'],
|
|
50
50
|
convert: (model, msg, publish, options, meta) => {
|
|
51
51
|
const id = meta.device.modelID === '005f0c3b' ? msg.data[0] : msg.data[msg.data.length - 1];
|
|
@@ -1929,6 +1929,22 @@ module.exports = [
|
|
|
1929
1929
|
exposes: [exposes.binary('trigger', ea.STATE_SET, true, false).withDescription('Trigger the door movement'),
|
|
1930
1930
|
exposes.binary('garage_door_contact', ea.STATE, true, false)],
|
|
1931
1931
|
},
|
|
1932
|
+
{
|
|
1933
|
+
fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_wfxuhoea'}],
|
|
1934
|
+
model: 'GDC311ZBQ1',
|
|
1935
|
+
vendor: 'TuYa',
|
|
1936
|
+
description: 'LoraTap garage door opener with wireless sensor',
|
|
1937
|
+
fromZigbee: [fz.matsee_garage_door_opener, fz.ignore_basic_report],
|
|
1938
|
+
toZigbee: [tz.matsee_garage_door_opener, tz.tuya_data_point_test],
|
|
1939
|
+
whiteLabel: [{vendor: 'LoraTap', model: 'GDC311ZBQ1'}],
|
|
1940
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
1941
|
+
const endpoint = device.getEndpoint(1);
|
|
1942
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic']);
|
|
1943
|
+
},
|
|
1944
|
+
exposes: [exposes.binary('trigger', ea.STATE_SET, true, false).withDescription('Trigger the door movement'),
|
|
1945
|
+
exposes.binary('garage_door_contact', ea.STATE, false, true)
|
|
1946
|
+
.withDescription('Indicates if the garage door contact is closed (= true) or open (= false)')],
|
|
1947
|
+
},
|
|
1932
1948
|
{
|
|
1933
1949
|
fingerprint: [{modelID: 'TS0201', manufacturerName: '_TZ3000_qaaysllp'}],
|
|
1934
1950
|
model: 'LCZ030',
|
package/devices/ynoa.js
CHANGED
|
@@ -2,6 +2,7 @@ const exposes = require('../lib/exposes');
|
|
|
2
2
|
const fz = {...require('../converters/fromZigbee'), legacy: require('../lib/legacy').fromZigbee};
|
|
3
3
|
const reporting = require('../lib/reporting');
|
|
4
4
|
const e = exposes.presets;
|
|
5
|
+
const extend = require('..//lib/extend');
|
|
5
6
|
|
|
6
7
|
module.exports = [
|
|
7
8
|
{
|
|
@@ -18,4 +19,27 @@ module.exports = [
|
|
|
18
19
|
await reporting.batteryPercentageRemaining(endpoint);
|
|
19
20
|
},
|
|
20
21
|
},
|
|
22
|
+
{
|
|
23
|
+
zigbeeModel: ['ZBT-RGBWLight-M0000'],
|
|
24
|
+
model: 'LA-GU10-RGBW',
|
|
25
|
+
vendor: 'Ynoa',
|
|
26
|
+
description: 'Smart LED GU10 RGB CCT',
|
|
27
|
+
extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 526], supportsHS: true}),
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
zigbeeModel: ['ZBT-RGBWSwitch-D0800'],
|
|
31
|
+
model: 'LA-5KEY-RGBW',
|
|
32
|
+
vendor: 'Ynoa',
|
|
33
|
+
description: '5 key control for RGBW light',
|
|
34
|
+
fromZigbee: [fz.command_on, fz.command_off, fz.command_move_to_color_temp,
|
|
35
|
+
fz.command_move_to_color, fz.command_move_to_level, fz.battery],
|
|
36
|
+
exposes: [e.battery(), e.battery_low(), e.action(['on', 'off', 'brightness_move_to_level',
|
|
37
|
+
'color_temperature_move', 'color_move'])],
|
|
38
|
+
toZigbee: [],
|
|
39
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
40
|
+
const endpoint = device.getEndpoint(1);
|
|
41
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg']);
|
|
42
|
+
await reporting.batteryPercentageRemaining(endpoint);
|
|
43
|
+
},
|
|
44
|
+
},
|
|
21
45
|
];
|