diff --git a/solar_ble.py b/solar_ble.py index 3064867..097bab1 100755 --- a/solar_ble.py +++ b/solar_ble.py @@ -405,16 +405,18 @@ if __name__ == "__main__": data = try_read_parse(dev, 0x0100, 11, parse_battery_state) if data: data[DataName.CALCULATED_BATTERY_POWER] = float( - Decimal(data.get(DataName.BATTERY_VOLTAGE, 0)) - * Decimal(data.get(DataName.BATTERY_CURRENT, 0)) + Decimal(str(data.get(DataName.BATTERY_VOLTAGE, 0))) + * Decimal( + str(data.get(DataName.BATTERY_CURRENT, 0)) + ) ) data[DataName.CALCULATED_PANEL_POWER] = float( - Decimal(data.get(DataName.PANEL_VOLTAGE, 0)) - * Decimal(data.get(DataName.PANEL_CURRENT, 0)) + Decimal(str(data.get(DataName.PANEL_VOLTAGE, 0))) + * Decimal(str(data.get(DataName.PANEL_CURRENT, 0))) ) data[DataName.CALCULATED_LOAD_POWER] = float( - Decimal(data.get(DataName.LOAD_VOLTAGE, 0)) - * Decimal(data.get(DataName.LOAD_CURRENT, 0)) + Decimal(str(data.get(DataName.LOAD_VOLTAGE, 0))) + * Decimal(str(data.get(DataName.LOAD_CURRENT, 0))) ) log(data) for consumer in consumers: