zigbee-herdsman-converters 14.0.350 → 14.0.351
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/lellki.js +27 -0
- package/devices/owon.js +19 -0
- package/devices/sinope.js +18 -5
- package/devices/tuya.js +3 -1
- package/npm-shrinkwrap.json +1 -1
- package/package.json +1 -1
package/devices/lellki.js
CHANGED
|
@@ -142,4 +142,31 @@ module.exports = [
|
|
|
142
142
|
.withDescription('Recover state after power outage')],
|
|
143
143
|
onEvent: tuya.onEventMeasurementPoll,
|
|
144
144
|
},
|
|
145
|
+
{
|
|
146
|
+
fingerprint: [{modelID: 'TS011F', manufacturerName: '_TZ3000_c7nc9w3c'}],
|
|
147
|
+
model: 'WP30-EU',
|
|
148
|
+
description: 'Power cord 4 sockets EU (with power monitoring)',
|
|
149
|
+
vendor: 'LELLKI',
|
|
150
|
+
extend: extend.switch(),
|
|
151
|
+
fromZigbee: [fz.on_off, fz.electrical_measurement, fz.metering, fz.ignore_basic_report, fz.tuya_switch_power_outage_memory],
|
|
152
|
+
toZigbee: [tz.on_off, tz.tuya_switch_power_outage_memory],
|
|
153
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
154
|
+
const endpoint = device.getEndpoint(1);
|
|
155
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
|
|
156
|
+
await reporting.bind(device.getEndpoint(2), coordinatorEndpoint, ['genOnOff']);
|
|
157
|
+
await reporting.bind(device.getEndpoint(3), coordinatorEndpoint, ['genOnOff']);
|
|
158
|
+
endpoint.saveClusterAttributeKeyValue('haElectricalMeasurement', {acCurrentDivisor: 1000, acCurrentMultiplier: 1});
|
|
159
|
+
endpoint.saveClusterAttributeKeyValue('seMetering', {divisor: 100, multiplier: 1});
|
|
160
|
+
device.save();
|
|
161
|
+
},
|
|
162
|
+
options: [exposes.options.measurement_poll_interval()],
|
|
163
|
+
exposes: [e.switch().withEndpoint('l1'), e.switch().withEndpoint('l2'),
|
|
164
|
+
e.switch().withEndpoint('l3'), e.power(), e.current(), e.voltage().withAccess(ea.STATE),
|
|
165
|
+
e.energy(), exposes.enum('power_outage_memory', ea.STATE_SET, ['on', 'off', 'restore'])
|
|
166
|
+
.withDescription('Recover state after power outage')],
|
|
167
|
+
endpoint: (device) => {
|
|
168
|
+
return {l1: 1, l2: 2, l3: 3};
|
|
169
|
+
},
|
|
170
|
+
onEvent: tuya.onEventMeasurementPoll,
|
|
171
|
+
},
|
|
145
172
|
];
|
package/devices/owon.js
CHANGED
|
@@ -102,4 +102,23 @@ module.exports = [
|
|
|
102
102
|
device.save();
|
|
103
103
|
},
|
|
104
104
|
},
|
|
105
|
+
{
|
|
106
|
+
zigbeeModel: ['THS317-ET'],
|
|
107
|
+
model: 'THS317-ET',
|
|
108
|
+
vendor: 'OWON',
|
|
109
|
+
description: 'Temperature and humidity sensor',
|
|
110
|
+
fromZigbee: [fz.temperature, fz.humidity, fz.battery],
|
|
111
|
+
toZigbee: [],
|
|
112
|
+
exposes: [e.battery(), e.temperature(), e.humidity()],
|
|
113
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
114
|
+
const endpoint = device.getEndpoint(2);
|
|
115
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['msTemperatureMeasurement', 'msRelativeHumidity', 'genPowerCfg']);
|
|
116
|
+
await reporting.temperature(endpoint);
|
|
117
|
+
await reporting.humidity(endpoint);
|
|
118
|
+
await reporting.batteryVoltage(endpoint);
|
|
119
|
+
await reporting.batteryPercentageRemaining(endpoint);
|
|
120
|
+
device.powerSource = 'Battery';
|
|
121
|
+
device.save();
|
|
122
|
+
},
|
|
123
|
+
},
|
|
105
124
|
];
|
package/devices/sinope.js
CHANGED
|
@@ -35,15 +35,28 @@ module.exports = [
|
|
|
35
35
|
|
|
36
36
|
try {
|
|
37
37
|
await reporting.thermostatSystemMode(endpoint);
|
|
38
|
+
} catch (error) {/* Not all support this */}
|
|
39
|
+
|
|
40
|
+
try {
|
|
38
41
|
await reporting.thermostatRunningState(endpoint);
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
} catch (error) {/* Not all support this */}
|
|
43
|
+
|
|
44
|
+
await reporting.readMeteringMultiplierDivisor(endpoint);
|
|
45
|
+
await reporting.currentSummDelivered(endpoint, {min: 10, max: 303, change: [1, 1]});
|
|
46
|
+
try {
|
|
41
47
|
await reporting.instantaneousDemand(endpoint, {min: 10, max: 304, change: 1});
|
|
42
|
-
|
|
48
|
+
} catch (error) {/* Do nothing*/}
|
|
49
|
+
|
|
50
|
+
await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
|
|
51
|
+
try {
|
|
43
52
|
await reporting.activePower(endpoint, {min: 10, max: 305, change: 1});
|
|
53
|
+
} catch (error) {/* Do nothing*/}
|
|
54
|
+
try {
|
|
44
55
|
await reporting.rmsCurrent(endpoint, {min: 10, max: 306, change: 100}); // divider 1000: 0.1Arms
|
|
56
|
+
} catch (error) {/* Do nothing*/}
|
|
57
|
+
try {
|
|
45
58
|
await reporting.rmsVoltage(endpoint, {min: 10, max: 307, change: 5}); // divider 10: 0.5Vrms
|
|
46
|
-
} catch (error) {/*
|
|
59
|
+
} catch (error) {/* Do nothing*/}
|
|
47
60
|
|
|
48
61
|
// Disable default reporting
|
|
49
62
|
await reporting.temperature(endpoint, {min: 1, max: 0xFFFF});
|
|
@@ -121,7 +134,7 @@ module.exports = [
|
|
|
121
134
|
tz.sinope_thermostat_enable_outdoor_temperature, tz.sinope_thermostat_outdoor_temperature, tz.sinope_floor_control_mode,
|
|
122
135
|
tz.sinope_ambiant_max_heat_setpoint, tz.sinope_floor_min_heat_setpoint, tz.sinope_floor_max_heat_setpoint,
|
|
123
136
|
tz.sinope_temperature_sensor, tz.sinope_time_format],
|
|
124
|
-
exposes: [e.local_temperature(), e.keypad_lockout(),
|
|
137
|
+
exposes: [e.local_temperature(), e.keypad_lockout(), e.power(), e.current(), e.voltage(),
|
|
125
138
|
exposes.climate().withSetpoint('occupied_heating_setpoint', 7, 30, 0.5).withLocalTemperature()
|
|
126
139
|
.withSystemMode(['off', 'auto', 'heat']).withRunningState(['idle', 'heat']).withPiHeatingDemand(),
|
|
127
140
|
exposes.enum('backlight_auto_dim', ea.SET, ['on demand', 'sensing']).withDescription('Control backlight dimming behavior')],
|
package/devices/tuya.js
CHANGED
|
@@ -9,7 +9,7 @@ const e = exposes.presets;
|
|
|
9
9
|
const ea = exposes.access;
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
const TS011Fplugs = ['_TZ3000_5f43h46b', '_TZ3000_cphmq0q7', '_TZ3000_dpo1ysak', '_TZ3000_ew3ldmgx',
|
|
12
|
+
const TS011Fplugs = ['_TZ3000_5f43h46b', '_TZ3000_cphmq0q7', '_TZ3000_dpo1ysak', '_TZ3000_ew3ldmgx', '_TZ3000_gjnozsaz',
|
|
13
13
|
'_TZ3000_jvzvulen', '_TZ3000_mraovvmm', '_TZ3000_nfnmi125', '_TZ3000_ps3dmato', '_TZ3000_w0qqde0g', '_TZ3000_u5u4cakc'];
|
|
14
14
|
|
|
15
15
|
module.exports = [
|
|
@@ -125,6 +125,7 @@ module.exports = [
|
|
|
125
125
|
{modelID: 'TS0505B', manufacturerName: '_TZ3000_x2fqbdun'},
|
|
126
126
|
{modelID: 'TS0505B', manufacturerName: '_TZ3000_589kq4ul'},
|
|
127
127
|
{modelID: 'TS0505B', manufacturerName: '_TZ3000_1mtktxdk'},
|
|
128
|
+
{modelID: 'TS0505B', manufacturerName: '_TZ3210_remypqqm'},
|
|
128
129
|
{modelID: 'TS0505B', manufacturerName: '_TZ3210_0rn9qhnu'},
|
|
129
130
|
{modelID: 'TS0505B', manufacturerName: '_TZ3210_bicjqpg4'},
|
|
130
131
|
{modelID: 'TS0505B', manufacturerName: '_TZ3000_cmaky9gq'},
|
|
@@ -844,6 +845,7 @@ module.exports = [
|
|
|
844
845
|
whiteLabel: [
|
|
845
846
|
{vendor: 'Moes', model: 'TV01-ZB'},
|
|
846
847
|
{vendor: 'Tesla Smart', model: 'TSL-TRV-TV01ZG'},
|
|
848
|
+
{vendor: 'Unknown/id3.pl', model: 'GTZ08'},
|
|
847
849
|
],
|
|
848
850
|
ota: ota.zigbeeOTA,
|
|
849
851
|
fromZigbee: [fz.ignore_basic_report, fz.ignore_tuya_set_time, fz.tvtwo_thermostat],
|
package/npm-shrinkwrap.json
CHANGED