zigbee-herdsman-converters 14.0.380 → 14.0.381
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 +37 -0
- package/devices/adeo.js +12 -0
- package/devices/tuya.js +28 -6
- package/devices/xiaomi.js +2 -1
- package/npm-shrinkwrap.json +1 -1
- package/package.json +1 -1
package/converters/fromZigbee.js
CHANGED
|
@@ -7928,6 +7928,34 @@ const converters = {
|
|
|
7928
7928
|
return result;
|
|
7929
7929
|
},
|
|
7930
7930
|
},
|
|
7931
|
+
command_stop_move_raw: {
|
|
7932
|
+
cluster: 'lightingColorCtrl',
|
|
7933
|
+
type: 'raw',
|
|
7934
|
+
convert: (model, msg, publish, options, meta) => {
|
|
7935
|
+
// commandStopMove without params
|
|
7936
|
+
if (msg.data[2] !== 71) return;
|
|
7937
|
+
if (hasAlreadyProcessedMessage(msg)) return;
|
|
7938
|
+
const movestop = 'stop';
|
|
7939
|
+
const action = postfixWithEndpointName(`hue_${movestop}`, msg, model);
|
|
7940
|
+
const payload = {action};
|
|
7941
|
+
addActionGroup(payload, msg, model);
|
|
7942
|
+
return payload;
|
|
7943
|
+
},
|
|
7944
|
+
},
|
|
7945
|
+
tuya_multi_action: {
|
|
7946
|
+
cluster: 'genOnOff',
|
|
7947
|
+
type: 'raw',
|
|
7948
|
+
convert: (model, msg, publish, options, meta) => {
|
|
7949
|
+
if (hasAlreadyProcessedMessage(msg, msg.data[2])) return;
|
|
7950
|
+
let action;
|
|
7951
|
+
if (msg.data[2] == 253) {
|
|
7952
|
+
action = {0: 'single', 1: 'double', 2: 'hold'}[msg.data[3]];
|
|
7953
|
+
} else if (msg.data[2] == 252) {
|
|
7954
|
+
action = {0: 'rotate_right', 1: 'rotate_left'}[msg.data[3]];
|
|
7955
|
+
}
|
|
7956
|
+
return {action};
|
|
7957
|
+
},
|
|
7958
|
+
},
|
|
7931
7959
|
// #endregion
|
|
7932
7960
|
|
|
7933
7961
|
// #region Ignore converters (these message dont need parsing).
|
|
@@ -8086,6 +8114,15 @@ const converters = {
|
|
|
8086
8114
|
type: ['raw'],
|
|
8087
8115
|
convert: (model, msg, publish, options, meta) => null,
|
|
8088
8116
|
},
|
|
8117
|
+
ignore_metering: {
|
|
8118
|
+
/**
|
|
8119
|
+
* When using this converter also add the following to the configure method of the device:
|
|
8120
|
+
* await readMeteringPowerConverterAttributes(endpoint);
|
|
8121
|
+
*/
|
|
8122
|
+
cluster: 'seMetering',
|
|
8123
|
+
type: ['attributeReport', 'readResponse'],
|
|
8124
|
+
convert: (model, msg, publish, options, meta) => null,
|
|
8125
|
+
},
|
|
8089
8126
|
// #endregion
|
|
8090
8127
|
};
|
|
8091
8128
|
|
package/devices/adeo.js
CHANGED
|
@@ -6,6 +6,18 @@ const tz = require('../converters/toZigbee');
|
|
|
6
6
|
const e = exposes.presets;
|
|
7
7
|
|
|
8
8
|
module.exports = [
|
|
9
|
+
{
|
|
10
|
+
zigbeeModel: ['LDSENK01F'],
|
|
11
|
+
model: 'LDSENK01F',
|
|
12
|
+
vendor: 'ADEO',
|
|
13
|
+
description: '10A EU smart plug',
|
|
14
|
+
extend: extend.switch(),
|
|
15
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
16
|
+
const endpoint = device.getEndpoint(1);
|
|
17
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
|
|
18
|
+
await reporting.onOff(endpoint);
|
|
19
|
+
},
|
|
20
|
+
},
|
|
9
21
|
{
|
|
10
22
|
zigbeeModel: ['LXEK-5'],
|
|
11
23
|
model: 'HR-C99C-Z-C045',
|
package/devices/tuya.js
CHANGED
|
@@ -12,7 +12,7 @@ const utils = require('../lib/utils');
|
|
|
12
12
|
|
|
13
13
|
const TS011Fplugs = ['_TZ3000_5f43h46b', '_TZ3000_cphmq0q7', '_TZ3000_dpo1ysak', '_TZ3000_ew3ldmgx', '_TZ3000_gjnozsaz',
|
|
14
14
|
'_TZ3000_jvzvulen', '_TZ3000_mraovvmm', '_TZ3000_nfnmi125', '_TZ3000_ps3dmato', '_TZ3000_w0qqde0g', '_TZ3000_u5u4cakc',
|
|
15
|
-
'_TZ3000_rdtixbnu', '_TZ3000_typdpbpg', '_TZ3000_v1pdxuqq'
|
|
15
|
+
'_TZ3000_rdtixbnu', '_TZ3000_typdpbpg', '_TZ3000_v1pdxuqq'];
|
|
16
16
|
|
|
17
17
|
const tzLocal = {
|
|
18
18
|
TS0504B_color: {
|
|
@@ -203,7 +203,8 @@ module.exports = [
|
|
|
203
203
|
fingerprint: [{modelID: 'TS0501B', manufacturerName: '_TZ3000_4whigl8i'},
|
|
204
204
|
{modelID: 'TS0501B', manufacturerName: '_TZ3210_4whigl8i'},
|
|
205
205
|
{modelID: 'TS0501B', manufacturerName: '_TZ3210_9q49basr'},
|
|
206
|
-
{modelID: 'TS0501B', manufacturerName: '_TZ3210_grnwgegn'}
|
|
206
|
+
{modelID: 'TS0501B', manufacturerName: '_TZ3210_grnwgegn'},
|
|
207
|
+
{modelID: 'TS0501B', manufacturerName: '_TZ3210_wuheofsg'}],
|
|
207
208
|
model: 'TS0501B',
|
|
208
209
|
description: 'Zigbee light',
|
|
209
210
|
vendor: 'TuYa',
|
|
@@ -1121,7 +1122,8 @@ module.exports = [
|
|
|
1121
1122
|
{
|
|
1122
1123
|
fingerprint: [
|
|
1123
1124
|
{modelID: 'TS011F', manufacturerName: '_TZ3000_hyfvrar3'},
|
|
1124
|
-
{modelID: 'TS011F', manufacturerName: '_TZ3000_cymsnfvf'}
|
|
1125
|
+
{modelID: 'TS011F', manufacturerName: '_TZ3000_cymsnfvf'},
|
|
1126
|
+
{modelID: 'TS011F', manufacturerName: '_TZ3000_bfn1w0mm'}],
|
|
1125
1127
|
model: 'TS011F_plug_2',
|
|
1126
1128
|
description: 'Smart plug (without power monitoring)',
|
|
1127
1129
|
vendor: 'TuYa',
|
|
@@ -1836,9 +1838,29 @@ module.exports = [
|
|
|
1836
1838
|
model: 'ERS-10TZBVK-AA',
|
|
1837
1839
|
vendor: 'TuYa',
|
|
1838
1840
|
description: 'Smart knob',
|
|
1839
|
-
fromZigbee: [
|
|
1840
|
-
|
|
1841
|
-
|
|
1841
|
+
fromZigbee: [
|
|
1842
|
+
fz.command_step, fz.command_toggle, fz.command_move_hue, fz.command_step_color_temperature, fz.command_stop_move_raw,
|
|
1843
|
+
fz.tuya_multi_action, fz.tuya_operation_mode, fz.battery,
|
|
1844
|
+
],
|
|
1845
|
+
toZigbee: [tz.tuya_operation_mode],
|
|
1846
|
+
exposes: [
|
|
1847
|
+
e.action([
|
|
1848
|
+
'toggle', 'brightness_step_up', 'brightness_step_down', 'color_temperature_step_up', 'color_temperature_step_down',
|
|
1849
|
+
'saturation_move', 'hue_move', 'hue_stop', 'single', 'double', 'hold', 'rotate_left', 'rotate_right',
|
|
1850
|
+
]),
|
|
1851
|
+
exposes.numeric('action_step_size', ea.STATE).withValueMin(0).withValueMax(255),
|
|
1852
|
+
exposes.numeric('action_transition_time', ea.STATE).withUnit('s'),
|
|
1853
|
+
exposes.numeric('action_rate', ea.STATE).withValueMin(0).withValueMax(255),
|
|
1854
|
+
e.battery(),
|
|
1855
|
+
exposes.enum('operation_mode', ea.ALL, ['command', 'event']).withDescription(
|
|
1856
|
+
'Operation mode: "command" - for group control, "event" - for clicks'),
|
|
1857
|
+
],
|
|
1858
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
1859
|
+
const endpoint = device.getEndpoint(1);
|
|
1860
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg']);
|
|
1861
|
+
await reporting.batteryPercentageRemaining(endpoint);
|
|
1862
|
+
await endpoint.read('genOnOff', ['tuyaOperationMode']);
|
|
1863
|
+
},
|
|
1842
1864
|
},
|
|
1843
1865
|
{
|
|
1844
1866
|
fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_kzm5w4iz'}],
|
package/devices/xiaomi.js
CHANGED
|
@@ -1402,7 +1402,8 @@ module.exports = [
|
|
|
1402
1402
|
model: 'SSM-U01',
|
|
1403
1403
|
vendor: 'Xiaomi',
|
|
1404
1404
|
description: 'Aqara single switch module T1 (with neutral)',
|
|
1405
|
-
|
|
1405
|
+
// Ignore energy metering reports, rely on aqara_opple: https://github.com/Koenkk/zigbee2mqtt/issues/10709
|
|
1406
|
+
fromZigbee: [fz.on_off, fz.electrical_measurement, fz.device_temperature, fz.aqara_opple, fz.ignore_metering],
|
|
1406
1407
|
exposes: [e.switch(), e.energy(), e.power(), e.device_temperature(), e.power_outage_memory(), e.switch_type()],
|
|
1407
1408
|
toZigbee: [tz.xiaomi_switch_type, tz.on_off, tz.xiaomi_switch_power_outage_memory],
|
|
1408
1409
|
configure: async (device, coordinatorEndpoint, logger) => {
|
package/npm-shrinkwrap.json
CHANGED