From 58eacb7afe8572292560d473cd08be421aa0f0e7 Mon Sep 17 00:00:00 2001 From: Trefor Southwell <48591903+springfall2008@users.noreply.github.com> Date: Mon, 29 Jan 2024 20:42:53 +0000 Subject: [PATCH 1/2] Fix crash with .replace in battery power curve code --- apps/predbat/predbat.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/predbat/predbat.py b/apps/predbat/predbat.py index a683f681d..15c6c1cb2 100644 --- a/apps/predbat/predbat.py +++ b/apps/predbat/predbat.py @@ -18,7 +18,7 @@ import os import yaml -THIS_VERSION = "v7.15.3" +THIS_VERSION = "v7.15.4" TIME_FORMAT = "%Y-%m-%dT%H:%M:%S%z" TIME_FORMAT_SECONDS = "%Y-%m-%dT%H:%M:%S.%f%z" TIME_FORMAT_OCTOPUS = "%Y-%m-%d %H:%M:%S%z" @@ -989,11 +989,11 @@ def find_charge_curve(self): charge_rate_sensor = self.base.get_arg("charge_rate", indirect=False, index=self.id) predbat_status_sensor = "predbat.status" battery_power_sensor = self.base.get_arg("battery_power", indirect=False, index=self.id) - battery_power_sensor = battery_power_sensor.replace("number.", "sensor.") # Workaround as old template had number. final_curve = {} max_power = int(self.battery_rate_max_charge * 1000.0 * 60.0) - if soc_kwh_sensor and charge_rate_sensor: + if soc_kwh_sensor and charge_rate_sensor and battery_power_sensor and predbat_status_sensor: + battery_power_sensor = battery_power_sensor.replace("number.", "sensor.") # Workaround as old template had number. self.log("Find charge curve with sensors {} and {} and {} and {}".format(soc_kwh_sensor, charge_rate_sensor, predbat_status_sensor, battery_power_sensor)) soc_kwh_data = self.base.get_history(entity_id=soc_kwh_sensor, days=self.base.max_days_previous) charge_rate_data = self.base.get_history(entity_id=charge_rate_sensor, days=self.base.max_days_previous) From 01aeff8dccb5df7f5a3838457abc4956c1f981d0 Mon Sep 17 00:00:00 2001 From: Trefor Southwell <48591903+springfall2008@users.noreply.github.com> Date: Mon, 29 Jan 2024 20:44:00 +0000 Subject: [PATCH 2/2] Update apps.yaml - change number to sensor --- apps/predbat/config/apps.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/predbat/config/apps.yaml b/apps/predbat/config/apps.yaml index c7a38f538..0c56a3e1b 100644 --- a/apps/predbat/config/apps.yaml +++ b/apps/predbat/config/apps.yaml @@ -79,8 +79,8 @@ pred_bat: - number.givtcp_{geserial}_battery_discharge_rate - number.givtcp2_{geserial2}_battery_discharge_rate battery_power: - - number.givtcp_{geserial}_battery_power - - number.givtcp2_{geserial2}_battery_power + - sensor.givtcp_{geserial}_battery_power + - sensor.givtcp2_{geserial2}_battery_power pv_power: - number.givtcp_{geserial}_pv_power - number.givtcp2_{geserial2}_pv_power