mirror of
https://github.com/Koenkk/zigbee2mqtt.git
synced 2026-07-02 10:01:37 +00:00
Support ZNCZ02LM. #4
This commit is contained in:
@@ -27,6 +27,12 @@ const toPercentage = (value, min, max) => {
|
||||
return (normalised * 100).toFixed(2);
|
||||
}
|
||||
|
||||
const precisionRound = (number, precision) => {
|
||||
const factor = Math.pow(10, precision);
|
||||
return Math.round(number * factor) / factor;
|
||||
}
|
||||
|
||||
|
||||
// Global variable store that can be used by devices.
|
||||
const store = {}
|
||||
|
||||
@@ -185,10 +191,22 @@ const parsers = [
|
||||
};
|
||||
}
|
||||
},
|
||||
{
|
||||
devices: ['ZNCZ02LM'],
|
||||
cid: 'genOnOff',
|
||||
type: 'attReport',
|
||||
convert: (msg) => {return {state: msg.data.data['onOff'] === 1 ? '{"state": "ON"}': '{"state": "OFF"}'}}
|
||||
},
|
||||
{
|
||||
devices: ['ZNCZ02LM'],
|
||||
cid: 'genAnalogInput',
|
||||
type: 'attReport',
|
||||
convert: (msg) => {return {power: precisionRound(msg.data.data['presentValue'], 2)}}
|
||||
},
|
||||
|
||||
// Ignore parsers (these message dont need parsing).
|
||||
{
|
||||
devices: ['WXKG11LM', 'MCCGQ11LM', 'MCCGQ01LM', 'WXKG01LM', 'LED1545G12', '7146060PH', 'LED1537R6'],
|
||||
devices: ['WXKG11LM', 'MCCGQ11LM', 'MCCGQ01LM', 'WXKG01LM', 'LED1545G12', '7146060PH', 'LED1537R6', 'ZNCZ02LM'],
|
||||
cid: 'genOnOff',
|
||||
type: 'devChange',
|
||||
convert: () => null
|
||||
@@ -229,6 +247,12 @@ const parsers = [
|
||||
type: 'devChange',
|
||||
convert: () => null
|
||||
},
|
||||
{
|
||||
devices: ['ZNCZ02LM'],
|
||||
cid: 'genAnalogInput',
|
||||
type: 'devChange',
|
||||
convert: () => null
|
||||
},
|
||||
];
|
||||
|
||||
module.exports = parsers;
|
||||
|
||||
@@ -79,6 +79,13 @@ const devices = {
|
||||
supports: 'water leak true/false',
|
||||
homeassistant: [homeassistant.binary_sensor_water_leak]
|
||||
},
|
||||
'lumi.plug': {
|
||||
model: 'ZNCZ02LM',
|
||||
description: 'Mi power plug ZigBee',
|
||||
supports: 'on/off, power measurement',
|
||||
vendor: 'Xiaomi',
|
||||
homeassistant: [homeassistant.switch, homeassistant.sensor_power]
|
||||
},
|
||||
|
||||
// IKEA
|
||||
'TRADFRI bulb E27 WS opal 980lm': {
|
||||
|
||||
@@ -84,6 +84,15 @@ const homeassistant = {
|
||||
json_attributes: ['battery'],
|
||||
}
|
||||
},
|
||||
'sensor_power': {
|
||||
type: 'sensor',
|
||||
object_id: 'power',
|
||||
discovery_payload: {
|
||||
unit_of_measurement: 'Watt',
|
||||
icon: 'mdi:flash',
|
||||
value_template: '{{ value_json.power }}',
|
||||
}
|
||||
},
|
||||
|
||||
// Light
|
||||
'light_brightness_colortemp_xy': {
|
||||
@@ -107,6 +116,18 @@ const homeassistant = {
|
||||
command_topic: true
|
||||
}
|
||||
},
|
||||
|
||||
// Switch
|
||||
'switch': {
|
||||
type: 'switch',
|
||||
object_id: 'switch',
|
||||
discovery_payload: {
|
||||
payload_off: '{"state": "OFF"}',
|
||||
payload_on: '{"state": "ON"}',
|
||||
value_template: '{{ value_json.state }}',
|
||||
command_topic: true
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = homeassistant;
|
||||
|
||||
@@ -22,12 +22,6 @@ const plannedToSupport = [
|
||||
supports: '-',
|
||||
vendor: 'Xiaomi',
|
||||
},
|
||||
{
|
||||
model: 'ZNCZ02LM',
|
||||
description: 'Mi power plug ZigBee',
|
||||
supports: '-',
|
||||
vendor: 'Xiaomi',
|
||||
},
|
||||
{
|
||||
model: 'QBCZ11LM',
|
||||
description: 'Aqara wall socket',
|
||||
|
||||
Reference in New Issue
Block a user