zigbee-herdsman-converters 14.0.678 → 14.0.680
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 +13 -6
- package/devices/eglo.js +7 -0
- package/devices/philips.js +8 -1
- package/devices/third_reality.js +0 -1
- package/devices/tuya.js +10 -24
- package/devices/ubisys.js +7 -1
- package/package.json +1 -1
package/converters/fromZigbee.js
CHANGED
|
@@ -4213,12 +4213,19 @@ const converters = {
|
|
|
4213
4213
|
tuya_air_quality: {
|
|
4214
4214
|
cluster: 'manuSpecificTuya',
|
|
4215
4215
|
type: ['commandDataReport', 'commandDataResponse'],
|
|
4216
|
-
options:
|
|
4217
|
-
|
|
4218
|
-
|
|
4219
|
-
|
|
4220
|
-
|
|
4221
|
-
|
|
4216
|
+
options: (definition) => {
|
|
4217
|
+
const result = [
|
|
4218
|
+
exposes.options.precision('temperature'), exposes.options.calibration('temperature'),
|
|
4219
|
+
exposes.options.precision('humidity'), exposes.options.calibration('humidity'),
|
|
4220
|
+
exposes.options.precision('co2'), exposes.options.calibration('co2'),
|
|
4221
|
+
exposes.options.precision('voc'), exposes.options.calibration('voc'),
|
|
4222
|
+
exposes.options.precision('formaldehyd'), exposes.options.calibration('formaldehyd'),
|
|
4223
|
+
];
|
|
4224
|
+
if (definition.exposes.find((e) => e.name === 'pm25')) {
|
|
4225
|
+
result.push(exposes.options.precision('pm25'), exposes.options.calibration('pm25'));
|
|
4226
|
+
}
|
|
4227
|
+
return result;
|
|
4228
|
+
},
|
|
4222
4229
|
convert: (model, msg, publish, options, meta) => {
|
|
4223
4230
|
const dpValue = tuya.firstDpValue(msg, meta, 'tuya_air_quality');
|
|
4224
4231
|
const dp = dpValue.dp;
|
package/devices/eglo.js
CHANGED
|
@@ -15,4 +15,11 @@ module.exports = [
|
|
|
15
15
|
description: 'ST64 adjustable white filament bulb',
|
|
16
16
|
extend: extend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
|
|
17
17
|
},
|
|
18
|
+
{
|
|
19
|
+
zigbeeModel: ['EGLO_ZM_RGB_TW'],
|
|
20
|
+
model: '900024',
|
|
21
|
+
vendor: 'EGLO',
|
|
22
|
+
description: 'SALITERAS-Z ceiling light',
|
|
23
|
+
extend: extend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 370]}),
|
|
24
|
+
},
|
|
18
25
|
];
|
package/devices/philips.js
CHANGED
|
@@ -2781,6 +2781,13 @@ module.exports = [
|
|
|
2781
2781
|
description: 'Hue white single filament bulb A19 E26 with Bluetooth (1100 Lumen)',
|
|
2782
2782
|
extend: hueExtend.light_onoff_brightness(),
|
|
2783
2783
|
},
|
|
2784
|
+
{
|
|
2785
|
+
zigbeeModel: ['LWA029'],
|
|
2786
|
+
model: '9290024691A',
|
|
2787
|
+
vendor: 'Philips',
|
|
2788
|
+
description: 'Hue white single filament bulb A19 E26 with Bluetooth (1100 Lumen)',
|
|
2789
|
+
extend: hueExtend.light_onoff_brightness(),
|
|
2790
|
+
},
|
|
2784
2791
|
{
|
|
2785
2792
|
zigbeeModel: ['915005998201'],
|
|
2786
2793
|
model: '915005998201',
|
|
@@ -2904,7 +2911,7 @@ module.exports = [
|
|
|
2904
2911
|
zigbeeModel: ['4090131P9'],
|
|
2905
2912
|
model: '8718696174548',
|
|
2906
2913
|
vendor: 'Philips',
|
|
2907
|
-
description: '
|
|
2914
|
+
description: 'Hue Sana wall lamp with Bluetooth white',
|
|
2908
2915
|
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
2909
2916
|
},
|
|
2910
2917
|
{
|
package/devices/third_reality.js
CHANGED
|
@@ -60,7 +60,6 @@ module.exports = [
|
|
|
60
60
|
vendor: 'Third Reality',
|
|
61
61
|
description: 'Water sensor',
|
|
62
62
|
fromZigbee: [fz.ias_water_leak_alarm_1, fz.battery],
|
|
63
|
-
meta: {battery: {dontDividePercentage: true}},
|
|
64
63
|
toZigbee: [],
|
|
65
64
|
ota: ota.zigbeeOTA,
|
|
66
65
|
exposes: [e.water_leak(), e.battery_low(), e.battery(), e.battery_voltage()],
|
package/devices/tuya.js
CHANGED
|
@@ -15,15 +15,6 @@ const tzZosung = zosung.tzZosung;
|
|
|
15
15
|
const ez = zosung.presetsZosung;
|
|
16
16
|
const globalStore = require('../lib/store');
|
|
17
17
|
|
|
18
|
-
const TS011Fplugs = ['_TZ3000_5f43h46b', '_TZ3000_cphmq0q7', '_TZ3000_dpo1ysak', '_TZ3000_ew3ldmgx', '_TZ3000_gjnozsaz',
|
|
19
|
-
'_TZ3000_jvzvulen', '_TZ3000_mraovvmm', '_TZ3000_nfnmi125', '_TZ3000_ps3dmato', '_TZ3000_w0qqde0g', '_TZ3000_u5u4cakc',
|
|
20
|
-
'_TZ3000_rdtixbnu', '_TZ3000_typdpbpg', '_TZ3000_kx0pris5', '_TZ3000_amdymr7l', '_TZ3000_z1pnpsdo', '_TZ3000_ksw8qtmt',
|
|
21
|
-
'_TZ3000_1h2x4akh', '_TZ3000_9vo5icau', '_TZ3000_cehuw1lw', '_TZ3000_ko6v90pg', '_TZ3000_f1bapcit', '_TZ3000_cjrngdr3',
|
|
22
|
-
'_TZ3000_zloso4jk', '_TZ3000_r6buo8ba', '_TZ3000_iksasdbv', '_TZ3000_idrffznf', '_TZ3000_okaz9tjs', '_TZ3210_q7oryllx',
|
|
23
|
-
'_TZ3000_ss98ec5d', '_TZ3000_gznh2xla', '_TZ3000_hdopuwv6', '_TZ3000_gvn91tmx', '_TZ3000_dksbtrzs', '_TZ3000_b28wrpvx',
|
|
24
|
-
'_TZ3000_aim0ztek', '_TZ3000_mlswgkc3', '_TZ3000_7dndcnnb', '_TZ3000_waho4jtj', '_TZ3000_nmsciidq', '_TZ3000_jtgxgmks',
|
|
25
|
-
'_TZ3000_rdfh8cfs', '_TZ3000_yujkchbz', '_TZ3000_fgwhjm9j', '_TZ3000_qeuvnohg', '_TZ3000_rul9yxcc'];
|
|
26
|
-
|
|
27
18
|
const tzLocal = {
|
|
28
19
|
TS110E_options: {
|
|
29
20
|
key: ['min_brightness', 'max_brightness', 'light_type'],
|
|
@@ -1552,6 +1543,7 @@ module.exports = [
|
|
|
1552
1543
|
{modelID: 'TS0201', manufacturerName: '_TZ3000_fllyghyj'},
|
|
1553
1544
|
{modelID: 'TS0201', manufacturerName: '_TZ3000_yd2e749y'},
|
|
1554
1545
|
{modelID: 'TS0201', manufacturerName: '_TZ3000_6uzkisv2'},
|
|
1546
|
+
{modelID: 'TS0201', manufacturerName: '_TZ3000_xr3htd96'},
|
|
1555
1547
|
{modelID: 'TS0601', manufacturerName: '_TZE200_9yapgbuv'},
|
|
1556
1548
|
],
|
|
1557
1549
|
model: 'WSD500A',
|
|
@@ -1809,7 +1801,7 @@ module.exports = [
|
|
|
1809
1801
|
},
|
|
1810
1802
|
{
|
|
1811
1803
|
fingerprint: [{modelID: 'TS0002', manufacturerName: '_TZ3000_01gpyda5'}, {modelID: 'TS0002', manufacturerName: '_TZ3000_bvrlqyj7'},
|
|
1812
|
-
{modelID: 'TS0002', manufacturerName: '_TZ3000_7ed9cqgi'}],
|
|
1804
|
+
{modelID: 'TS0002', manufacturerName: '_TZ3000_7ed9cqgi'}, {modelID: 'TS0002', manufacturerName: '_TZ3000_zmy4lslw'}],
|
|
1813
1805
|
model: 'TS0002_switch_module',
|
|
1814
1806
|
vendor: 'TuYa',
|
|
1815
1807
|
description: '2 gang switch module',
|
|
@@ -2293,9 +2285,9 @@ module.exports = [
|
|
|
2293
2285
|
extend: tuya.extend.switch({indicatorMode: true}),
|
|
2294
2286
|
},
|
|
2295
2287
|
{
|
|
2296
|
-
|
|
2297
|
-
|
|
2298
|
-
|
|
2288
|
+
// Note: below you will find the TS011F_plug_2 and TS011F_plug_3. These are identified via a fingerprint and
|
|
2289
|
+
// thus preferred above the TS011F_plug_1 if the fingerprint matches
|
|
2290
|
+
zigbeeModel: ['TS011F'],
|
|
2299
2291
|
model: 'TS011F_plug_1',
|
|
2300
2292
|
description: 'Smart plug (with power monitoring)',
|
|
2301
2293
|
vendor: 'TuYa',
|
|
@@ -2319,12 +2311,8 @@ module.exports = [
|
|
|
2319
2311
|
},
|
|
2320
2312
|
},
|
|
2321
2313
|
{
|
|
2322
|
-
fingerprint:
|
|
2323
|
-
|
|
2324
|
-
{modelID: 'TS011F', manufacturerName: '_TZ3000_v1pdxuqq'},
|
|
2325
|
-
{modelID: 'TS011F', manufacturerName: '_TZ3000_8a833yls'},
|
|
2326
|
-
{modelID: 'TS011F', manufacturerName: '_TZ3000_bfn1w0mm'},
|
|
2327
|
-
{modelID: 'TS011F', manufacturerName: '_TZ3000_nzkqcvvs'}],
|
|
2314
|
+
fingerprint: tuya.fingerprint('TS011F',
|
|
2315
|
+
['_TZ3000_hyfvrar3', '_TZ3000_v1pdxuqq', '_TZ3000_8a833yls', '_TZ3000_bfn1w0mm', '_TZ3000_nzkqcvvs']),
|
|
2328
2316
|
model: 'TS011F_plug_2',
|
|
2329
2317
|
description: 'Smart plug (without power monitoring)',
|
|
2330
2318
|
vendor: 'TuYa',
|
|
@@ -2335,11 +2323,9 @@ module.exports = [
|
|
|
2335
2323
|
},
|
|
2336
2324
|
},
|
|
2337
2325
|
{
|
|
2338
|
-
fingerprint: [].
|
|
2339
|
-
return
|
|
2340
|
-
|
|
2341
|
-
});
|
|
2342
|
-
})),
|
|
2326
|
+
fingerprint: [160, 69, 68, 65, 64].map((applicationVersion) => {
|
|
2327
|
+
return {modelID: 'TS011F', applicationVersion};
|
|
2328
|
+
}),
|
|
2343
2329
|
model: 'TS011F_plug_3',
|
|
2344
2330
|
description: 'Smart plug (with power monitoring by polling)',
|
|
2345
2331
|
vendor: 'TuYa',
|
package/devices/ubisys.js
CHANGED
|
@@ -670,7 +670,7 @@ module.exports = [
|
|
|
670
670
|
toZigbee: [tz.light_onoff_brightness, tz.ballast_config, tz.level_config, ubisys.tz.dimmer_setup,
|
|
671
671
|
ubisys.tz.dimmer_setup_genLevelCtrl, ubisys.tz.configure_device_setup, tz.ignore_transition, tz.light_brightness_move,
|
|
672
672
|
tz.light_brightness_step],
|
|
673
|
-
exposes: [e.light_brightness().withLevelConfig(), e.power(),
|
|
673
|
+
exposes: [e.light_brightness().withLevelConfig(), e.power(), e.energy(),
|
|
674
674
|
exposes.numeric('ballast_minimum_level', ea.ALL).withValueMin(1).withValueMax(254)
|
|
675
675
|
.withDescription('Specifies the minimum light output of the ballast'),
|
|
676
676
|
exposes.numeric('ballast_maximum_level', ea.ALL).withValueMin(1).withValueMax(254)
|
|
@@ -706,6 +706,12 @@ module.exports = [
|
|
|
706
706
|
await reporting.instantaneousDemand(endpoint);
|
|
707
707
|
},
|
|
708
708
|
onEvent: async (type, data, device) => {
|
|
709
|
+
if (data.type === 'attributeReport' && data.cluster === 'seMetering') {
|
|
710
|
+
const endpoint = device.getEndpoint(4);
|
|
711
|
+
try {
|
|
712
|
+
await endpoint.read('seMetering', ['currentSummDelivered']);
|
|
713
|
+
} catch (error) {/* Do nothing*/}
|
|
714
|
+
}
|
|
709
715
|
/*
|
|
710
716
|
* As per technical doc page 23 section 7.3.4, 7.3.5
|
|
711
717
|
* https://www.ubisys.de/wp-content/uploads/ubisys-d1-technical-reference.pdf
|