From 5d8be8baa094e266c514f068e85bd0105a551067 Mon Sep 17 00:00:00 2001 From: z647230 <31622045+z647230@users.noreply.github.com> Date: Wed, 6 Dec 2023 17:22:01 +0100 Subject: [PATCH] Update innr.ts added support for innr sp-240 device: zigbeeModel: ['SP 240'], model: 'SP 240', vendor: 'Innr', --- src/devices/innr.ts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/devices/innr.ts b/src/devices/innr.ts index 06b2a980ff793..7ddc890712c09 100644 --- a/src/devices/innr.ts +++ b/src/devices/innr.ts @@ -684,6 +684,31 @@ const definitions: Definition[] = [ } }, }, + { + zigbeeModel: ['SP 240'], + model: 'SP 240', + vendor: 'Innr', + description: 'Innr Smartplug with Powermetering', + fromZigbee: [fz.on_off, fz.electrical_measurement, fz.metering, fz.ignore_basic_report], + toZigbee: [tz.on_off], + configure: async (device, coordinatorEndpoint, logger) => { + const endpoint = device.getEndpoint(1); + await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff', 'haElectricalMeasurement', 'seMetering']); + endpoint.saveClusterAttributeKeyValue('seMetering', {divisor: 100, multiplier: 1}); + endpoint.saveClusterAttributeKeyValue('haElectricalMeasurement', { acVoltageMultiplier: 1, acVoltageDivisor: 1, acCurrentMultiplier: 1, acCurrentDivisor: 1000, acPowerMultiplier: 1, acPowerDivisor: 1, }); + try { + await reporting.currentSummDelivered(endpoint); + await reporting.rmsVoltage(endpoint, {change: 5}); + await reporting.rmsCurrent(endpoint, {change: 50}); + await reporting.activePower(endpoint, {change: 10}); + } catch (error) {} + await endpoint.read('genOnOff', ['onOff']); + }, + options: [exposes.options.measurement_poll_interval()], + + exposes: [e.switch(), e.power(), e.current(), e.voltage(), e.energy()], + onEvent: (type, data, device, options) => tuya.onEventMeasurementPoll(type, data, device, options, true, false), + }, ]; export default definitions;