From 66aa5e0edd454f730bdc5a5f2cff327653337dfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20St=C3=BCrz?= Date: Wed, 24 Aug 2022 17:04:42 +0200 Subject: [PATCH] Update battery charging state and remove from meter due to strange data --- kostal/integrationpluginkostal.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kostal/integrationpluginkostal.cpp b/kostal/integrationpluginkostal.cpp index dd95446..f2e4cc3 100644 --- a/kostal/integrationpluginkostal.cpp +++ b/kostal/integrationpluginkostal.cpp @@ -406,7 +406,7 @@ void IntegrationPluginKostal::setupKostalConnection(ThingSetupInfo *info) thing->setStateValue(kostalInverterTotalEnergyProducedStateTypeId, kostalConnection->totalYield() / 1000.0); // kWh // Power - thing->setStateValue(kostalInverterCurrentPowerStateTypeId, - kostalConnection->totalAcPower()); + thing->setStateValue(kostalInverterCurrentPowerStateTypeId, - (kostalConnection->totalAcPower() - kostalConnection->batteryActualPower())); // Update the battery if available Things batteryThings = myThings().filterByParentId(thing->id()).filterByThingClassId(kostalBatteryThingClassId); @@ -425,9 +425,9 @@ void IntegrationPluginKostal::setupKostalConnection(ThingSetupInfo *info) batteryThing->setStateValue(kostalBatteryCurrentPowerStateTypeId, batteryPower); if (batteryPower == 0) { batteryThing->setStateValue(kostalBatteryChargingStateStateTypeId, "idle"); - } else if (batteryPower > 0) { - batteryThing->setStateValue(kostalBatteryChargingStateStateTypeId, "discharging"); } else if (batteryPower < 0) { + batteryThing->setStateValue(kostalBatteryChargingStateStateTypeId, "discharging"); + } else if (batteryPower > 0) { batteryThing->setStateValue(kostalBatteryChargingStateStateTypeId, "charging"); } }