zigbee-herdsman-converters 14.0.297 → 14.0.301
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/toZigbee.js +4 -4
- package/devices/centralite.js +25 -0
- package/devices/heiman.js +1 -0
- package/devices/philips.js +15 -1
- package/devices/tuya.js +4 -3
- package/devices/xiaomi.js +21 -0
- package/npm-shrinkwrap.json +1 -1
- package/package.json +1 -1
package/converters/toZigbee.js
CHANGED
|
@@ -1954,7 +1954,7 @@ const converters = {
|
|
|
1954
1954
|
convertSet: async (entity, key, value, meta) => {
|
|
1955
1955
|
if (['ZNCZ04LM', 'QBKG25LM', 'SSM-U01', 'SSM-U02', 'DLKZMK11LM', 'QBKG39LM', 'QBKG41LM', 'ZNCZ15LM',
|
|
1956
1956
|
'WS-EUK01', 'WS-EUK02', 'WS-EUK03', 'WS-EUK04', 'QBKG31LM', 'QBCZ15LM', 'QBKG20LM', 'QBKG38LM',
|
|
1957
|
-
'QBKG34LM', 'QBCZ14LM'].includes(meta.mapped.model)) {
|
|
1957
|
+
'QBKG34LM', 'QBCZ14LM', 'QBKG19LM'].includes(meta.mapped.model)) {
|
|
1958
1958
|
await entity.write('aqaraOpple', {0x0201: {value: value ? 1 : 0, type: 0x10}}, manufacturerOptions.xiaomi);
|
|
1959
1959
|
} else if (['ZNCZ02LM', 'QBCZ11LM'].includes(meta.mapped.model)) {
|
|
1960
1960
|
const payload = value ?
|
|
@@ -1976,7 +1976,7 @@ const converters = {
|
|
|
1976
1976
|
},
|
|
1977
1977
|
convertGet: async (entity, key, meta) => {
|
|
1978
1978
|
if (['ZNCZ04LM', 'QBKG25LM', 'SSM-U01', 'SSM-U02', 'DLKZMK11LM', 'QBKG39LM', 'QBKG41LM', 'ZNCZ15LM',
|
|
1979
|
-
'WS-EUK02', 'WS-EUK01', 'QBKG31LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG20LM', 'QBKG34LM',
|
|
1979
|
+
'WS-EUK02', 'WS-EUK01', 'QBKG31LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG20LM', 'QBKG34LM', 'QBKG19LM',
|
|
1980
1980
|
'QBKG38LM'].includes(meta.mapped.model)) {
|
|
1981
1981
|
await entity.read('aqaraOpple', [0x0201]);
|
|
1982
1982
|
} else if (['ZNCZ02LM', 'QBCZ11LM', 'ZNCZ11LM'].includes(meta.mapped.model)) {
|
|
@@ -2075,7 +2075,7 @@ const converters = {
|
|
|
2075
2075
|
xiaomi_led_disabled_night: {
|
|
2076
2076
|
key: ['led_disabled_night'],
|
|
2077
2077
|
convertSet: async (entity, key, value, meta) => {
|
|
2078
|
-
if (['ZNCZ04LM', 'ZNCZ15LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG20LM', 'QBKG25LM',
|
|
2078
|
+
if (['ZNCZ04LM', 'ZNCZ15LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG20LM', 'QBKG25LM', 'QBKG19LM',
|
|
2079
2079
|
'QBKG34LM'].includes(meta.mapped.model)) {
|
|
2080
2080
|
await entity.write('aqaraOpple', {0x0203: {value: value ? 1 : 0, type: 0x10}}, manufacturerOptions.xiaomi);
|
|
2081
2081
|
} else if (['ZNCZ11LM'].includes(meta.mapped.model)) {
|
|
@@ -2090,7 +2090,7 @@ const converters = {
|
|
|
2090
2090
|
return {state: {led_disabled_night: value}};
|
|
2091
2091
|
},
|
|
2092
2092
|
convertGet: async (entity, key, meta) => {
|
|
2093
|
-
if (['ZNCZ04LM', 'ZNCZ15LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG20LM', 'QBKG25LM',
|
|
2093
|
+
if (['ZNCZ04LM', 'ZNCZ15LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG20LM', 'QBKG25LM', 'QBKG19LM',
|
|
2094
2094
|
'QBKG34LM'].includes(meta.mapped.model)) {
|
|
2095
2095
|
await entity.read('aqaraOpple', [0x0203], manufacturerOptions.xiaomi);
|
|
2096
2096
|
} else {
|
package/devices/centralite.js
CHANGED
|
@@ -165,6 +165,31 @@ module.exports = [
|
|
|
165
165
|
await reporting.fanMode(endpoint);
|
|
166
166
|
},
|
|
167
167
|
},
|
|
168
|
+
{
|
|
169
|
+
zigbeeModel: ['3157100-E'],
|
|
170
|
+
model: '3157100-E',
|
|
171
|
+
vendor: 'Centralite',
|
|
172
|
+
description: '3-Series pearl touch thermostat,',
|
|
173
|
+
fromZigbee: [fz.battery, fz.thermostat, fz.fan, fz.ignore_time_read],
|
|
174
|
+
toZigbee: [tz.factory_reset, tz.thermostat_local_temperature, tz.thermostat_local_temperature_calibration,
|
|
175
|
+
tz.thermostat_occupied_heating_setpoint, tz.thermostat_occupied_cooling_setpoint,
|
|
176
|
+
tz.thermostat_setpoint_raise_lower, tz.thermostat_remote_sensing,
|
|
177
|
+
tz.thermostat_control_sequence_of_operation, tz.thermostat_system_mode,
|
|
178
|
+
tz.thermostat_relay_status_log, tz.fan_mode, tz.thermostat_running_state],
|
|
179
|
+
exposes: [e.battery(), exposes.climate().withSetpoint('occupied_heating_setpoint', 10, 30, 1).withLocalTemperature()
|
|
180
|
+
.withSystemMode(['off', 'heat', 'cool', 'emergency_heating'])
|
|
181
|
+
.withRunningState(['idle', 'heat', 'cool', 'fan_only']).withFanMode(['auto', 'on'])
|
|
182
|
+
.withSetpoint('occupied_cooling_setpoint', 10, 30, 1).withLocalTemperatureCalibration()],
|
|
183
|
+
meta: {battery: {voltageToPercentage: '3V_1500_2800'}},
|
|
184
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
185
|
+
const endpoint = device.getEndpoint(1);
|
|
186
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg', 'hvacThermostat', 'hvacFanCtrl']);
|
|
187
|
+
await reporting.batteryVoltage(endpoint);
|
|
188
|
+
await reporting.thermostatRunningState(endpoint);
|
|
189
|
+
await reporting.thermostatTemperature(endpoint);
|
|
190
|
+
await reporting.fanMode(endpoint);
|
|
191
|
+
},
|
|
192
|
+
},
|
|
168
193
|
{
|
|
169
194
|
zigbeeModel: ['4200-C'],
|
|
170
195
|
model: '4200-C',
|
package/devices/heiman.js
CHANGED
|
@@ -10,6 +10,7 @@ const ea = exposes.access;
|
|
|
10
10
|
|
|
11
11
|
module.exports = [
|
|
12
12
|
{
|
|
13
|
+
fingerprint: [{modelID: 'TS0212', manufacturerName: '_TYZB01_wpmo3ja3'}],
|
|
13
14
|
zigbeeModel: ['CO_V15', 'CO_YDLV10', 'CO_V16', '1ccaa94c49a84abaa9e38687913947ba'],
|
|
14
15
|
model: 'HS1CA-M',
|
|
15
16
|
description: 'Smart carbon monoxide sensor',
|
package/devices/philips.js
CHANGED
|
@@ -530,7 +530,7 @@ module.exports = [
|
|
|
530
530
|
},
|
|
531
531
|
{
|
|
532
532
|
zigbeeModel: ['LWA017'],
|
|
533
|
-
model: '
|
|
533
|
+
model: '929002469202',
|
|
534
534
|
vendor: 'Philips',
|
|
535
535
|
description: 'Hue white A60 bulb E27 1050lm with Bluetooth',
|
|
536
536
|
meta: {turnsOffAtBrightness1: true},
|
|
@@ -1769,6 +1769,20 @@ module.exports = [
|
|
|
1769
1769
|
},
|
|
1770
1770
|
ota: ota.zigbeeOTA,
|
|
1771
1771
|
},
|
|
1772
|
+
{
|
|
1773
|
+
zigbeeModel: ['LOM007'],
|
|
1774
|
+
model: '929003050601',
|
|
1775
|
+
vendor: 'Philips',
|
|
1776
|
+
description: 'Hue smart plug',
|
|
1777
|
+
extend: extend.switch(),
|
|
1778
|
+
toZigbee: [tz.on_off].concat([tz.hue_power_on_behavior, tz.hue_power_on_error]),
|
|
1779
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
1780
|
+
const endpoint = device.getEndpoint(11);
|
|
1781
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
|
|
1782
|
+
await reporting.onOff(endpoint);
|
|
1783
|
+
},
|
|
1784
|
+
ota: ota.zigbeeOTA,
|
|
1785
|
+
},
|
|
1772
1786
|
{
|
|
1773
1787
|
zigbeeModel: ['LLC014'],
|
|
1774
1788
|
model: '7099860PH',
|
package/devices/tuya.js
CHANGED
|
@@ -152,7 +152,8 @@ module.exports = [
|
|
|
152
152
|
{modelID: 'TS0202', manufacturerName: '_TYZB01_2b8f6cio'},
|
|
153
153
|
{modelID: 'TS0202', manufacturerName: '_TYZB01_dl7cejts'},
|
|
154
154
|
{modelID: 'TS0202', manufacturerName: '_TYZB01_qjqgmqxr'},
|
|
155
|
-
{modelID: 'TS0202', manufacturerName: '_TZ3000_mmtwjmaq'}
|
|
155
|
+
{modelID: 'TS0202', manufacturerName: '_TZ3000_mmtwjmaq'},
|
|
156
|
+
{modelID: 'WHD02', manufacturerName: '_TZ3000_hktqahrq'}],
|
|
156
157
|
model: 'TS0202',
|
|
157
158
|
vendor: 'TuYa',
|
|
158
159
|
description: 'Motion sensor',
|
|
@@ -824,8 +825,8 @@ module.exports = [
|
|
|
824
825
|
},
|
|
825
826
|
{
|
|
826
827
|
fingerprint: [{modelID: 'TS0601', manufacturerName: '_TZE200_a4bpgplm'}],
|
|
827
|
-
model: '
|
|
828
|
-
vendor: '
|
|
828
|
+
model: 'TS0601_thermostat_1',
|
|
829
|
+
vendor: 'TuYa',
|
|
829
830
|
description: 'Thermostatic radiator valve',
|
|
830
831
|
onEvent: tuya.onEventSetLocalTime,
|
|
831
832
|
fromZigbee: [fz.ignore_basic_report, fz.ignore_tuya_set_time, fz.haozee_thermostat],
|
package/devices/xiaomi.js
CHANGED
|
@@ -688,6 +688,27 @@ module.exports = [
|
|
|
688
688
|
onEvent: preventReset,
|
|
689
689
|
ota: ota.zigbeeOTA,
|
|
690
690
|
},
|
|
691
|
+
{
|
|
692
|
+
zigbeeModel: ['lumi.switch.b1nacn01'],
|
|
693
|
+
model: 'QBKG19LM',
|
|
694
|
+
vendor: 'Xiaomi',
|
|
695
|
+
description: 'Aqara smart wall switch T1 (with neutral, single rocker)',
|
|
696
|
+
fromZigbee: [fz.on_off, fz.xiaomi_power, fz.xiaomi_multistate_action, fz.xiaomi_switch_opple_basic],
|
|
697
|
+
toZigbee: [tz.on_off, tz.xiaomi_switch_operation_mode_opple, tz.xiaomi_switch_power_outage_memory,
|
|
698
|
+
tz.xiaomi_led_disabled_night],
|
|
699
|
+
exposes: [
|
|
700
|
+
e.switch(), e.action(['single', 'double']), e.power().withAccess(ea.STATE), e.energy(),
|
|
701
|
+
e.voltage().withAccess(ea.STATE), e.temperature().withAccess(ea.STATE),
|
|
702
|
+
e.power_outage_memory(), e.led_disabled_night(),
|
|
703
|
+
exposes.enum('operation_mode', ea.ALL, ['control_relay', 'decoupled'])
|
|
704
|
+
.withDescription('Decoupled mode for left button'),
|
|
705
|
+
],
|
|
706
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
707
|
+
await device.getEndpoint(1).write('aqaraOpple', {'mode': 1}, {manufacturerCode: 0x115f, disableResponse: true});
|
|
708
|
+
},
|
|
709
|
+
onEvent: preventReset,
|
|
710
|
+
ota: ota.zigbeeOTA,
|
|
711
|
+
},
|
|
691
712
|
{
|
|
692
713
|
zigbeeModel: ['lumi.switch.b2nacn01'],
|
|
693
714
|
model: 'QBKG20LM',
|
package/npm-shrinkwrap.json
CHANGED