From: Mark Herwege Date: Thu, 22 Apr 2021 18:34:12 +0000 (+0200) Subject: [nikohomecontrol] Fix energy meter. (#10546) X-Git-Url: https://git.basschouten.com/?a=commitdiff_plain;h=061ecda3215abd5dc139ced7a120997d9b67b81c;p=openhab-addons.git [nikohomecontrol] Fix energy meter. (#10546) Signed-off-by: Mark Herwege --- diff --git a/bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/protocol/nhc2/NikoHomeControlCommunication2.java b/bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/protocol/nhc2/NikoHomeControlCommunication2.java index 866e18283d..d77caa49ba 100644 --- a/bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/protocol/nhc2/NikoHomeControlCommunication2.java +++ b/bundles/org.openhab.binding.nikohomecontrol/src/main/java/org/openhab/binding/nikohomecontrol/internal/protocol/nhc2/NikoHomeControlCommunication2.java @@ -577,7 +577,9 @@ public class NikoHomeControlCommunication2 extends NikoHomeControlCommunication deviceProperties.stream().map(p -> p.electricalPower).filter(Objects::nonNull).findFirst() .ifPresent(electricalPower -> { try { - energyMeter.setPower(Integer.parseInt(electricalPower)); + // Sometimes API sends a fractional part, although API should only send whole units in W, + // therefore drop fractional part + energyMeter.setPower((int) Double.parseDouble(electricalPower)); logger.trace("setting energy meter {} power to {}", energyMeter.getId(), electricalPower); } catch (NumberFormatException e) { energyMeter.setPower(null);